From 8bf7c622332efd21e3631f1b683e9b09b19349f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=B6zkan=20pakdil?= Date: Fri, 21 Oct 2022 15:05:16 +0100 Subject: [PATCH 01/42] Create gradle.yml --- .github/workflows/gradle.yml | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/workflows/gradle.yml diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml new file mode 100644 index 0000000..3b44597 --- /dev/null +++ b/.github/workflows/gradle.yml @@ -0,0 +1,34 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. +# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle + +name: Java CI with Gradle + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +permissions: + contents: read + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Set up JDK 17 + uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + - name: Build with Gradle + uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1 + with: + arguments: build From 66d219e94f9098f1a439dc30790c6c825bdca057 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Fri, 21 Oct 2022 15:09:45 +0100 Subject: [PATCH 02/42] #53 testing with java 17 --- .github/dependabot.yml | 8 ++++++++ .github/workflows/gradle.yml | 2 ++ build.gradle | 4 ++-- 3 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..aca7b0b --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,8 @@ +version: 2 +updates: + - package-ecosystem: maven + directory: "/" + schedule: + interval: daily + time: "04:00" + open-pull-requests-limit: 10 \ No newline at end of file diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 3b44597..594de96 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -32,3 +32,5 @@ jobs: uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1 with: arguments: build + - name: Run everything + run: sh run-everything diff --git a/build.gradle b/build.gradle index 4b8dcca..202abc0 100644 --- a/build.gradle +++ b/build.gradle @@ -9,8 +9,8 @@ group = 'com.github.fabienrenaud' version = '7' mainClassName = 'com.github.fabienrenaud.jjb.Cli' -sourceCompatibility = 1.8 -targetCompatibility = 1.8 +sourceCompatibility = JavaVersion.VERSION_17 +targetCompatibility = JavaVersion.VERSION_17 repositories { mavenCentral() From 8ed8ba7a7d762265028826a048fa31884bab5fa8 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Fri, 21 Oct 2022 15:46:51 +0100 Subject: [PATCH 03/42] #53 testing with java 17 --- .github/workflows/gradle.yml | 2 -- run | 2 +- run.ps1 | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 594de96..6e584a8 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -18,9 +18,7 @@ permissions: jobs: build: - runs-on: ubuntu-latest - steps: - uses: actions/checkout@v3 - name: Set up JDK 17 diff --git a/run b/run index f8ccae2..cd5b55d 100755 --- a/run +++ b/run @@ -3,7 +3,7 @@ JAR=build/libs/app.jar HEAP_SIZE=2g -[ -z ${JVM_OPTIONS} ] && JVM_OPTIONS="-server -XX:+AggressiveOpts -Xms${HEAP_SIZE} -Xmx${HEAP_SIZE}" +[ -z ${JVM_OPTIONS} ] && JVM_OPTIONS="-server -Xms${HEAP_SIZE} -Xmx${HEAP_SIZE}" [ -z ${SEED} ] && export SEED=${RANDOM} [ -z ${SHADOW} ] && echo ./gradlew clean build shadowJar && ./gradlew clean build shadowJar diff --git a/run.ps1 b/run.ps1 index be36553..0f0548e 100644 --- a/run.ps1 +++ b/run.ps1 @@ -2,7 +2,7 @@ $jar = "build\libs\app.jar" $heapSize = "2g" if (-not (Test-Path env:JVM_OPTIONS)) { - $jvmOpts = "-server -XX:+AggressiveOpts -Xms${heapSize} -Xmx${heapSize}" + $jvmOpts = "-server -Xms${heapSize} -Xmx${heapSize}" } else { $jvmOpts = "$env:JVM_OPTIONS" } From 304053c9c1103bae37a84693596afcce7410a267 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Fri, 21 Oct 2022 22:05:54 +0100 Subject: [PATCH 04/42] #53 lowering the iteration and warm up --- src/main/java/com/github/fabienrenaud/jjb/Cli.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/github/fabienrenaud/jjb/Cli.java b/src/main/java/com/github/fabienrenaud/jjb/Cli.java index 5c9621e..764adef 100644 --- a/src/main/java/com/github/fabienrenaud/jjb/Cli.java +++ b/src/main/java/com/github/fabienrenaud/jjb/Cli.java @@ -49,12 +49,12 @@ public static abstract class AbstractCommand implements Runnable { */ @Option(type = OptionType.GLOBAL, name = "-f", description = "JMH: forks. Defaults to 2.") public int forks = 2; - @Option(type = OptionType.GLOBAL, name = "-wi", description = "JMH: warmup iterations. Defaults to 5.") - public int warmupIterations = 5; - @Option(type = OptionType.GLOBAL, name = "-i", description = "JMH: measurement iterations. Defaults to 10.") - public int measurementIterations = 10; - @Option(type = OptionType.GLOBAL, name = "-m", description = "JMH: measurement time in seconds. Defaults to 3.") - public int measurementTime = 3; + @Option(type = OptionType.GLOBAL, name = "-wi", description = "JMH: warmup iterations. Defaults to 1.") + public int warmupIterations = 1; + @Option(type = OptionType.GLOBAL, name = "-i", description = "JMH: measurement iterations. Defaults to 1.") + public int measurementIterations = 1; + @Option(type = OptionType.GLOBAL, name = "-m", description = "JMH: measurement time in seconds. Defaults to 2.") + public int measurementTime = 2; @Option(type = OptionType.GLOBAL, name = "-t", description = "JMH: number of threads. Defaults to 16.") public int threads = 16; From a56db5e9ffd087e3b65c1e055dd605d72a915b34 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sat, 22 Oct 2022 01:03:07 +0100 Subject: [PATCH 05/42] #53 commiting back results --- .github/workflows/gradle.yml | 3 +++ .gitignore | 1 - run-everything | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 6e584a8..c71b96d 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -32,3 +32,6 @@ jobs: arguments: build - name: Run everything run: sh run-everything + - uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: result adding back to repo \ No newline at end of file diff --git a/.gitignore b/.gitignore index 9721afc..ae8d1f1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,6 @@ # Build target/ *.csv -*.txt build/ .gradle/ *.gz diff --git a/run-everything b/run-everything index 498aecd..9a4cc6d 100755 --- a/run-everything +++ b/run-everything @@ -2,7 +2,7 @@ DATA_TYPES="users clients" NUMBERS="1" -SIZES="1 10 100 1000" +SIZES="1 10 100" COMMANDS="ser deser" OUTPUT_DIR=output From ab6878cbf276621ec5013ecc77768e5948d8dd75 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sat, 22 Oct 2022 12:28:06 +0100 Subject: [PATCH 06/42] #53 commiting back results --- .github/workflows/gradle.yml | 5 +- index.md | 261 ++ output/toMd.sh | 2 +- output/users-deser-1-1.txt | 4741 +++++++++++++++++++++++++++++++++ output/users-deser-1-10.txt | 4741 +++++++++++++++++++++++++++++++++ output/users-deser-1-1000.txt | 4407 ++++++++++++++++++++++++++++++ output/users-ser-1-1.txt | 3755 ++++++++++++++++++++++++++ output/users-ser-1-10.txt | 3755 ++++++++++++++++++++++++++ output/users-ser-1-100.txt | 47 + output/users-ser-1-1000.txt | 3667 +++++++++++++++++++++++++ 10 files changed, 25379 insertions(+), 2 deletions(-) create mode 100644 index.md create mode 100644 output/users-deser-1-1.txt create mode 100644 output/users-deser-1-10.txt create mode 100644 output/users-deser-1-1000.txt create mode 100644 output/users-ser-1-1.txt create mode 100644 output/users-ser-1-10.txt create mode 100644 output/users-ser-1-100.txt create mode 100644 output/users-ser-1-1000.txt diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index c71b96d..6fb549e 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -31,7 +31,10 @@ jobs: with: arguments: build - name: Run everything - run: sh run-everything + run: | + sh run-everything + cd output + ./toMd.sh ../index.md - uses: stefanzweifel/git-auto-commit-action@v4 with: commit_message: result adding back to repo \ No newline at end of file diff --git a/index.md b/index.md new file mode 100644 index 0000000..18681a2 --- /dev/null +++ b/index.md @@ -0,0 +1,261 @@ +2022-10-22 + +# *users* data type + +## JMH: Deserialization - 1000 KB + +| # | Benchmark | mode: | Throughput, | ops/time | | +| javaxjson/stream | | | | +| | | | | | | +| # | Run | progress: | 66.67% | complete, | ETA | +| # | Fork: | 1 | of | 2 | | +| OpenJDK | 64-Bit | Server | VM | warning: | -XX:ThreadPriorityPolicy=1 | +| # | Warmup | Iteration | 1: | Using | SEED=302604088310502 | +| 97.561 | ops/s | | | | | +| Iteration | 1: | 236.208 | ops/s | | | +| | | | | | | +| # | Run | progress: | 68.18% | complete, | ETA | +| # | Fork: | 2 | of | 2 | | +| OpenJDK | 64-Bit | Server | VM | warning: | -XX:ThreadPriorityPolicy=1 | +| # | Warmup | Iteration | 1: | Using | SEED=302618047231209 | +| 152.718 | ops/s | | | | | +| Iteration | 1: | 241.265 | ops/s | | | +| | | | | | | +| | | | | | | +| javaxjson/stream": | | | | | +| 238.736 | ops/s | | | | | +| | | | | | | +| | | | | | | +| # | JMH | version: | 1.33 | | | +| # | VM | version: | JDK | 17.0.4, | OpenJDK | +| # | VM | invoker: | /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java | | | +| # | VM | options: | -XX:ThreadPriorityPolicy=1 | -XX:+UnlockExperimentalVMOptions | -XX:+EnableJVMCIProduct | +| # | Blackhole | mode: | full | + | dont-inline | +| # | Warmup: | 1 | iterations, | 10 | s | +| # | Measurement: | 1 | iterations, | 2 | s | +| # | Timeout: | 10 | min | per | iteration | +| # | Threads: | 16 | threads, | will | synchronize | +| # | Benchmark | mode: | Throughput, | ops/time | | +| jsonio/stream | | | | +| | | | | | | +| # | Run | progress: | 69.70% | complete, | ETA | +| # | Fork: | 1 | of | 2 | | +| OpenJDK | 64-Bit | Server | VM | warning: | -XX:ThreadPriorityPolicy=1 | +| # | Warmup | Iteration | 1: | Using | SEED=302631891832633 | + +## JMH: Deserialization - 10 KB + +| Benchmark | Mode | Cnt | Score | Error | Units | +|-----------|------|-----|-------|-------|-------| +| avajejsonb/databind | thrpt | 2 | 54005.389 | ops/s | | +| avajejsonb_jackson/databind | thrpt | 2 | 36925.350 | ops/s | | +| dsljson/databind | thrpt | 2 | 69102.664 | ops/s | | +| dsljson_reflection/databind | thrpt | 2 | 48574.896 | ops/s | | +| fastjson/databind | thrpt | 2 | 37747.513 | ops/s | | +| flexjson/databind | thrpt | 2 | 6884.114 | ops/s | | +| genson/databind | thrpt | 2 | 29363.905 | ops/s | | +| gson/databind | thrpt | 2 | 29921.616 | ops/s | | +| jackson/databind | thrpt | 2 | 37711.584 | ops/s | | +| jackson_afterburner/databind | thrpt | 2 | 43057.176 | ops/s | | +| jackson_blackbird/databind | thrpt | 2 | 40909.535 | ops/s | | +| jodd/databind | thrpt | 2 | 30561.517 | ops/s | | +| johnzon/databind | thrpt | 2 | 13691.347 | ops/s | | +| jsonsmart/databind | thrpt | 2 | 36760.182 | ops/s | | +| logansquare/databind | thrpt | 2 | 38064.617 | ops/s | | +| moshi/databind | thrpt | 2 | 26968.731 | ops/s | | +| yasson/databind | thrpt | 2 | 6910.953 | ops/s | | +| genson/stream | thrpt | 2 | 45845.491 | ops/s | | +| gson/stream | thrpt | 2 | 40362.608 | ops/s | | +| jackson/stream | thrpt | 2 | 40131.419 | ops/s | | +| javaxjson/stream | thrpt | 2 | 14664.587 | ops/s | | +| jsonio/stream | thrpt | 2 | 8390.436 | ops/s | | +| jsonsimple/stream | thrpt | 2 | 10104.037 | ops/s | | +| minimaljson/stream | thrpt | 2 | 28654.995 | ops/s | | +| mjson/stream | thrpt | 2 | 10137.066 | ops/s | | +| moshi/stream | thrpt | 2 | 29554.606 | ops/s | | +| nanojson/stream | thrpt | 2 | 25102.768 | ops/s | | +| orgjson/stream | thrpt | 2 | 11259.996 | ops/s | | +| purejson/stream | thrpt | 2 | 6771.798 | ops/s | | +| tapestry/stream | thrpt | 2 | 36592.065 | ops/s | | + +## JMH: Deserialization - 1 KB + +| Benchmark | Mode | Cnt | Score | Error | Units | +|-----------|------|-----|-------|-------|-------| +| avajejsonb/databind | thrpt | 2 | 624962.583 | ops/s | | +| avajejsonb_jackson/databind | thrpt | 2 | 466918.677 | ops/s | | +| dsljson/databind | thrpt | 2 | 820010.890 | ops/s | | +| dsljson_reflection/databind | thrpt | 2 | 583335.098 | ops/s | | +| fastjson/databind | thrpt | 2 | 297191.131 | ops/s | | +| flexjson/databind | thrpt | 2 | 80740.006 | ops/s | | +| genson/databind | thrpt | 2 | 353564.220 | ops/s | | +| gson/databind | thrpt | 2 | 343625.586 | ops/s | | +| jackson/databind | thrpt | 2 | 455998.590 | ops/s | | +| jackson_afterburner/databind | thrpt | 2 | 493959.078 | ops/s | | +| jackson_blackbird/databind | thrpt | 2 | 468453.693 | ops/s | | +| jodd/databind | thrpt | 2 | 309085.725 | ops/s | | +| johnzon/databind | thrpt | 2 | 171410.990 | ops/s | | +| jsonsmart/databind | thrpt | 2 | 399677.771 | ops/s | | +| logansquare/databind | thrpt | 2 | 230431.332 | ops/s | | +| moshi/databind | thrpt | 2 | 368204.261 | ops/s | | +| yasson/databind | thrpt | 2 | 85356.962 | ops/s | | +| genson/stream | thrpt | 2 | 422320.899 | ops/s | | +| gson/stream | thrpt | 2 | 413403.114 | ops/s | | +| jackson/stream | thrpt | 2 | 466533.498 | ops/s | | +| javaxjson/stream | thrpt | 2 | 40338.546 | ops/s | | +| jsonio/stream | thrpt | 2 | 99302.659 | ops/s | | +| jsonsimple/stream | thrpt | 2 | 135489.105 | ops/s | | +| minimaljson/stream | thrpt | 2 | 309484.974 | ops/s | | +| mjson/stream | thrpt | 2 | 111380.614 | ops/s | | +| moshi/stream | thrpt | 2 | 340699.598 | ops/s | | +| nanojson/stream | thrpt | 2 | 139411.537 | ops/s | | +| orgjson/stream | thrpt | 2 | 110455.834 | ops/s | | +| purejson/stream | thrpt | 2 | 79386.207 | ops/s | | +| tapestry/stream | thrpt | 2 | 381093.265 | ops/s | | + +## JMH: Serialization - 1000 KB + +| Benchmark | Mode | Cnt | Score | Error | Units | +|-----------|------|-----|-------|-------|-------| +| avajejsonb/databind | thrpt | 2 | 909.796 | ops/s | | +| avajejsonb_jackson/databind | thrpt | 2 | 725.338 | ops/s | | +| dsljson/databind | thrpt | 2 | 1211.758 | ops/s | | +| dsljson_reflection/databind | thrpt | 2 | 879.461 | ops/s | | +| fastjson/databind | thrpt | 2 | 286.244 | ops/s | | +| flexjson/databind | thrpt | 2 | 34.818 | ops/s | | +| genson/databind | thrpt | 2 | 465.310 | ops/s | | +| gson/databind | thrpt | 2 | 329.002 | ops/s | | +| jackson/databind | thrpt | 2 | 677.204 | ops/s | | +| jackson_afterburner/databind | thrpt | 2 | 748.052 | ops/s | | +| jackson_blackbird/databind | thrpt | 2 | 709.803 | ops/s | | +| jodd/databind | thrpt | 2 | 121.420 | ops/s | | +| johnzon/databind | thrpt | 2 | 276.222 | ops/s | | +| jsonsmart/databind | thrpt | 2 | 342.483 | ops/s | | +| logansquare/databind | thrpt | 2 | 930.066 | ops/s | | +| moshi/databind | thrpt | 2 | 354.500 | ops/s | | +| yasson/databind | thrpt | 2 | 272.193 | ops/s | | +| genson/stream | thrpt | 2 | 463.230 | ops/s | | +| gson/stream | thrpt | 2 | 162.848 | ops/s | | +| jackson/stream | thrpt | 2 | 872.831 | ops/s | | +| javaxjson/stream | thrpt | 2 | 797.142 | ops/s | | +| jsonio/stream | thrpt | 2 | 136.553 | ops/s | | +| jsonsimple/stream | thrpt | 2 | 94.080 | ops/s | | +| minimaljson/stream | thrpt | 2 | 431.163 | ops/s | | +| mjson/stream | thrpt | 2 | 120.385 | ops/s | | +| moshi/stream | thrpt | 2 | 493.473 | ops/s | | +| nanojson/stream | thrpt | 2 | 709.363 | ops/s | | +| orgjson/stream | thrpt | 2 | 170.667 | ops/s | | +| purejson/stream | thrpt | 2 | 6.409 | ops/s | | +| tapestry/stream | thrpt | 2 | 92.288 | ops/s | | + +## JMH: Serialization - 100 KB + +| # | Benchmark | mode: | Throughput, | ops/time | | +| avajejsonb/databind | | | | +| | | | | | | +| # | Run | progress: | 0.00% | complete, | ETA | +| # | Fork: | 1 | of | 2 | | +| OpenJDK | 64-Bit | Server | VM | warning: | -XX:ThreadPriorityPolicy=1 | +| # | Warmup | Iteration | 1: | Using | SEED=298585768449823 | +| 10320.877 | ops/s | | | | | +| Iteration | 1: | 10780.606 | ops/s | | | +| | | | | | | +| # | Run | progress: | 1.52% | complete, | ETA | +| # | Fork: | 2 | of | 2 | | +| OpenJDK | 64-Bit | Server | VM | warning: | -XX:ThreadPriorityPolicy=1 | +| # | Warmup | Iteration | 1: | Using | SEED=298599019564176 | +| 11059.269 | ops/s | | | | | +| Iteration | 1: | 10597.304 | ops/s | | | +| | | | | | | +| | | | | | | +| avajejsonb/databind": | | | | | +| 10688.955 | ops/s | | | | | +| | | | | | | +| | | | | | | +| # | JMH | version: | 1.33 | | | +| # | VM | version: | JDK | 17.0.4, | OpenJDK | +| # | VM | invoker: | /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java | | | +| # | VM | options: | -XX:ThreadPriorityPolicy=1 | -XX:+UnlockExperimentalVMOptions | -XX:+EnableJVMCIProduct | +| # | Blackhole | mode: | full | + | dont-inline | +| # | Warmup: | 1 | iterations, | 10 | s | +| # | Measurement: | 1 | iterations, | 2 | s | +| # | Timeout: | 10 | min | per | iteration | +| # | Threads: | 16 | threads, | will | synchronize | +| # | Benchmark | mode: | Throughput, | ops/time | | +| avajejsonb_jackson/databind | | | | +| | | | | | | +| # | Run | progress: | 3.03% | complete, | ETA | +| # | Fork: | 1 | of | 2 | | +| OpenJDK | 64-Bit | Server | VM | warning: | -XX:ThreadPriorityPolicy=1 | +| # | Warmup | Iteration | 1: | Using | SEED=298612265677184 | + +## JMH: Serialization - 10 KB + +| Benchmark | Mode | Cnt | Score | Error | Units | +|-----------|------|-----|-------|-------|-------| +| avajejsonb/databind | thrpt | 2 | 114531.353 | ops/s | | +| avajejsonb_jackson/databind | thrpt | 2 | 89917.118 | ops/s | | +| dsljson/databind | thrpt | 2 | 114508.712 | ops/s | | +| dsljson_reflection/databind | thrpt | 2 | 89277.436 | ops/s | | +| fastjson/databind | thrpt | 2 | 53726.393 | ops/s | | +| flexjson/databind | thrpt | 2 | 295.878 | ops/s | | +| genson/databind | thrpt | 2 | 44159.073 | ops/s | | +| gson/databind | thrpt | 2 | 33678.323 | ops/s | | +| jackson/databind | thrpt | 2 | 95337.370 | ops/s | | +| jackson_afterburner/databind | thrpt | 2 | 100637.060 | ops/s | | +| jackson_blackbird/databind | thrpt | 2 | 90378.728 | ops/s | | +| jodd/databind | thrpt | 2 | 14288.889 | ops/s | | +| johnzon/databind | thrpt | 2 | 32237.287 | ops/s | | +| jsonsmart/databind | thrpt | 2 | 30488.845 | ops/s | | +| logansquare/databind | thrpt | 2 | 87328.072 | ops/s | | +| moshi/databind | thrpt | 2 | 33484.818 | ops/s | | +| yasson/databind | thrpt | 2 | 28699.823 | ops/s | | +| genson/stream | thrpt | 2 | 40289.101 | ops/s | | +| gson/stream | thrpt | 2 | 14416.889 | ops/s | | +| jackson/stream | thrpt | 2 | 93692.784 | ops/s | | +| javaxjson/stream | thrpt | 2 | 64441.873 | ops/s | | +| jsonio/stream | thrpt | 2 | 10725.616 | ops/s | | +| jsonsimple/stream | thrpt | 2 | 7554.123 | ops/s | | +| minimaljson/stream | thrpt | 2 | 31133.600 | ops/s | | +| mjson/stream | thrpt | 2 | 12092.740 | ops/s | | +| moshi/stream | thrpt | 2 | 38112.080 | ops/s | | +| nanojson/stream | thrpt | 2 | 62321.300 | ops/s | | +| orgjson/stream | thrpt | 2 | 11842.706 | ops/s | | +| purejson/stream | thrpt | 2 | 5773.181 | ops/s | | +| tapestry/stream | thrpt | 2 | 6429.512 | ops/s | | + +## JMH: Serialization - 1 KB + +| Benchmark | Mode | Cnt | Score | Error | Units | +|-----------|------|-----|-------|-------|-------| +| avajejsonb/databind | thrpt | 2 | 894924.900 | ops/s | | +| avajejsonb_jackson/databind | thrpt | 2 | 773176.956 | ops/s | | +| dsljson/databind | thrpt | 2 | 1160153.247 | ops/s | | +| dsljson_reflection/databind | thrpt | 2 | 910009.496 | ops/s | | +| fastjson/databind | thrpt | 2 | 847854.362 | ops/s | | +| flexjson/databind | thrpt | 2 | 1442.951 | ops/s | | +| genson/databind | thrpt | 2 | 531644.539 | ops/s | | +| gson/databind | thrpt | 2 | 351756.931 | ops/s | | +| jackson/databind | thrpt | 2 | 819795.872 | ops/s | | +| jackson_afterburner/databind | thrpt | 2 | 817250.051 | ops/s | | +| jackson_blackbird/databind | thrpt | 2 | 787275.241 | ops/s | | +| jodd/databind | thrpt | 2 | 134957.460 | ops/s | | +| johnzon/databind | thrpt | 2 | 372523.854 | ops/s | | +| jsonsmart/databind | thrpt | 2 | 324399.536 | ops/s | | +| logansquare/databind | thrpt | 2 | 881008.053 | ops/s | | +| moshi/databind | thrpt | 2 | 321891.464 | ops/s | | +| yasson/databind | thrpt | 2 | 297482.821 | ops/s | | +| genson/stream | thrpt | 2 | 428789.230 | ops/s | | +| gson/stream | thrpt | 2 | 242049.815 | ops/s | | +| jackson/stream | thrpt | 2 | 904008.643 | ops/s | | +| javaxjson/stream | thrpt | 2 | 687635.775 | ops/s | | +| jsonio/stream | thrpt | 2 | 106270.217 | ops/s | | +| jsonsimple/stream | thrpt | 2 | 132087.245 | ops/s | | +| minimaljson/stream | thrpt | 2 | 450195.906 | ops/s | | +| mjson/stream | thrpt | 2 | 147958.702 | ops/s | | +| moshi/stream | thrpt | 2 | 390937.392 | ops/s | | +| nanojson/stream | thrpt | 2 | 661480.535 | ops/s | | +| orgjson/stream | thrpt | 2 | 143553.352 | ops/s | | +| purejson/stream | thrpt | 2 | 81867.154 | ops/s | | +| tapestry/stream | thrpt | 2 | 99915.994 | ops/s | | + diff --git a/output/toMd.sh b/output/toMd.sh index 9c4665b..00cdf05 100755 --- a/output/toMd.sh +++ b/output/toMd.sh @@ -1,4 +1,4 @@ -#!/usr/bin/env sh -e +#!/bin/bash datatypes=$(ls *.txt | cut -d- -f1 | sort | uniq) diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt new file mode 100644 index 0000000..10884af --- /dev/null +++ b/output/users-deser-1-1.txt @@ -0,0 +1,4741 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:13:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296109868913853 as seed for Random +588718.023 ops/s +Iteration 1: 620662.263 ops/s + +# Run progress: 1.52% complete, ETA 00:14:16 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296123089291359 as seed for Random +555338.570 ops/s +Iteration 1: 629262.903 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": + 624962.583 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson + +# Run progress: 3.03% complete, ETA 00:14:03 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296136209776888 as seed for Random +385112.225 ops/s +Iteration 1: 470708.115 ops/s + +# Run progress: 4.55% complete, ETA 00:13:49 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296149451911470 as seed for Random +385480.186 ops/s +Iteration 1: 463129.239 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": + 466918.677 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon + +# Run progress: 6.06% complete, ETA 00:13:37 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296162627172167 as seed for Random + + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + +# Run progress: 7.58% complete, ETA 00:10:55 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296163637198385 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 9.09% complete, ETA 00:09:07 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296164606200578 as seed for Random +752935.151 ops/s +Iteration 1: 804178.234 ops/s + +# Run progress: 10.61% complete, ETA 00:09:32 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296177798971113 as seed for Random +756526.641 ops/s +Iteration 1: 835843.546 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 820010.890 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:09:47 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296190994615489 as seed for Random +564999.979 ops/s +Iteration 1: 540533.759 ops/s + +# Run progress: 13.64% complete, ETA 00:09:57 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296204224032237 as seed for Random +571184.411 ops/s +Iteration 1: 626136.437 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 583335.098 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 15.15% complete, ETA 00:10:02 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296217472797589 as seed for Random +235539.724 ops/s +Iteration 1: 308012.733 ops/s + +# Run progress: 16.67% complete, ETA 00:10:03 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296230744337987 as seed for Random +196580.741 ops/s +Iteration 1: 286369.529 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 297191.131 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 18.18% complete, ETA 00:10:03 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296243987729707 as seed for Random +65021.991 ops/s +Iteration 1: 81288.510 ops/s + +# Run progress: 19.70% complete, ETA 00:10:00 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296257221454701 as seed for Random +64242.250 ops/s +Iteration 1: 80191.502 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 80740.006 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 21.21% complete, ETA 00:09:56 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296270478930784 as seed for Random +312289.605 ops/s +Iteration 1: 358080.906 ops/s + +# Run progress: 22.73% complete, ETA 00:09:50 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296283739471209 as seed for Random +347697.774 ops/s +Iteration 1: 349047.535 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 353564.220 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 24.24% complete, ETA 00:09:44 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296296986224131 as seed for Random +330736.615 ops/s +Iteration 1: 337246.267 ops/s + +# Run progress: 25.76% complete, ETA 00:09:37 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296310307906232 as seed for Random +309014.722 ops/s +Iteration 1: 350004.905 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 343625.586 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 27.27% complete, ETA 00:09:29 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296323582474277 as seed for Random +397493.804 ops/s +Iteration 1: 462863.321 ops/s + +# Run progress: 28.79% complete, ETA 00:09:21 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296336766990500 as seed for Random +265710.853 ops/s +Iteration 1: 449133.860 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 455998.590 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:09:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296349962167138 as seed for Random +456974.784 ops/s +Iteration 1: 483931.469 ops/s + +# Run progress: 31.82% complete, ETA 00:09:02 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296363197810817 as seed for Random +405268.338 ops/s +Iteration 1: 503986.687 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 493959.078 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:08:52 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296376419005978 as seed for Random +372025.871 ops/s +Iteration 1: 455466.367 ops/s + +# Run progress: 34.85% complete, ETA 00:08:43 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296389803787154 as seed for Random +426259.366 ops/s +Iteration 1: 481441.020 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 468453.693 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 36.36% complete, ETA 00:08:32 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296402951368763 as seed for Random +248595.740 ops/s +Iteration 1: 267466.537 ops/s + +# Run progress: 37.88% complete, ETA 00:08:22 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296416206126419 as seed for Random +310574.347 ops/s +Iteration 1: 350704.913 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 309085.725 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon + +# Run progress: 39.39% complete, ETA 00:08:11 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296429383388705 as seed for Random +157961.020 ops/s +Iteration 1: 181106.970 ops/s + +# Run progress: 40.91% complete, ETA 00:08:00 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296442590811209 as seed for Random +139996.324 ops/s +Iteration 1: 161715.011 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": + 171410.990 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:07:49 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296455814994828 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3c0a949d with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@23f6c56f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@411fbfec with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2864bf87 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@67688e25 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53962312 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7cdacd4c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1b83619b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@68bf029d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@10027465 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3e232bf with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 49 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3f5c7f79 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6dc3561b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4c5e93bc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@326a3857 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2844e68b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + + + +# Run progress: 43.94% complete, ETA 00:07:22 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296456966797693 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2cb551 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@11dc453b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7053167d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7b557ad with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e1dd0c7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@c6f107d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@284543df with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5d1db49f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@49520ad1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@dea91d5 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@c10fa41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2884bb83 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 49 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@757f5b44 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3136c26a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7fa07fc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7ddb61b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart + +# Run progress: 45.45% complete, ETA 00:06:57 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296458063282968 as seed for Random +353685.373 ops/s +Iteration 1: 396478.394 ops/s + +# Run progress: 46.97% complete, ETA 00:06:47 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296471226765559 as seed for Random +380682.378 ops/s +Iteration 1: 402877.148 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": + 399677.771 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare + +# Run progress: 48.48% complete, ETA 00:06:37 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296484365612746 as seed for Random +182006.868 ops/s +Iteration 1: 206480.025 ops/s + +# Run progress: 50.00% complete, ETA 00:06:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296497475801684 as seed for Random +240088.955 ops/s +Iteration 1: 254382.638 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": + 230431.332 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi + +# Run progress: 51.52% complete, ETA 00:06:17 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296510795123676 as seed for Random +320468.062 ops/s +Iteration 1: 365757.648 ops/s + +# Run progress: 53.03% complete, ETA 00:06:06 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296523979782302 as seed for Random +330283.871 ops/s +Iteration 1: 370650.875 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": + 368204.261 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson + +# Run progress: 54.55% complete, ETA 00:05:56 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296537247977063 as seed for Random +74468.523 ops/s +Iteration 1: 87760.526 ops/s + +# Run progress: 56.06% complete, ETA 00:05:45 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296550423521400 as seed for Random +68405.512 ops/s +Iteration 1: 82953.397 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": + 85356.962 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson + +# Run progress: 57.58% complete, ETA 00:05:34 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296563653620015 as seed for Random +397759.073 ops/s +Iteration 1: 399767.095 ops/s + +# Run progress: 59.09% complete, ETA 00:05:23 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296576886108245 as seed for Random +409201.080 ops/s +Iteration 1: 444874.703 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": + 422320.899 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson + +# Run progress: 60.61% complete, ETA 00:05:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296590167640807 as seed for Random +305334.455 ops/s +Iteration 1: 398327.869 ops/s + +# Run progress: 62.12% complete, ETA 00:05:00 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296603418889703 as seed for Random +339747.940 ops/s +Iteration 1: 428478.359 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": + 413403.114 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson + +# Run progress: 63.64% complete, ETA 00:04:49 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296616658941740 as seed for Random +411065.178 ops/s +Iteration 1: 462167.960 ops/s + +# Run progress: 65.15% complete, ETA 00:04:38 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296629780729913 as seed for Random +423118.018 ops/s +Iteration 1: 470899.036 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": + 466533.498 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson + +# Run progress: 66.67% complete, ETA 00:04:26 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296643056234466 as seed for Random +33620.590 ops/s +Iteration 1: 37919.305 ops/s + +# Run progress: 68.18% complete, ETA 00:04:14 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296656110729826 as seed for Random +36585.500 ops/s +Iteration 1: 42757.787 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": + 40338.546 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio + +# Run progress: 69.70% complete, ETA 00:04:03 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296669198478034 as seed for Random +85941.048 ops/s +Iteration 1: 99726.518 ops/s + +# Run progress: 71.21% complete, ETA 00:03:51 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296682344812365 as seed for Random +85611.048 ops/s +Iteration 1: 98878.800 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": + 99302.659 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple + +# Run progress: 72.73% complete, ETA 00:03:39 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296695589407812 as seed for Random +120357.442 ops/s +Iteration 1: 132067.947 ops/s + +# Run progress: 74.24% complete, ETA 00:03:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296708825244510 as seed for Random +116880.172 ops/s +Iteration 1: 138910.264 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": + 135489.105 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson + +# Run progress: 75.76% complete, ETA 00:03:15 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296722078182046 as seed for Random +282321.336 ops/s +Iteration 1: 307405.345 ops/s + +# Run progress: 77.27% complete, ETA 00:03:03 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296735362963804 as seed for Random +273891.029 ops/s +Iteration 1: 311564.602 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": + 309484.974 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson + +# Run progress: 78.79% complete, ETA 00:02:51 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296748567183527 as seed for Random +105675.640 ops/s +Iteration 1: 110581.151 ops/s + +# Run progress: 80.30% complete, ETA 00:02:39 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296761758336940 as seed for Random +109356.749 ops/s +Iteration 1: 112180.077 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": + 111380.614 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi + +# Run progress: 81.82% complete, ETA 00:02:27 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296774975518064 as seed for Random +310028.988 ops/s +Iteration 1: 338195.468 ops/s + +# Run progress: 83.33% complete, ETA 00:02:15 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296788245413265 as seed for Random +287496.704 ops/s +Iteration 1: 343203.728 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": + 340699.598 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson + +# Run progress: 84.85% complete, ETA 00:02:03 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296801495781542 as seed for Random +130871.347 ops/s +Iteration 1: 139769.565 ops/s + +# Run progress: 86.36% complete, ETA 00:01:51 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296814818710699 as seed for Random +132422.109 ops/s +Iteration 1: 139053.508 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": + 139411.537 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson + +# Run progress: 87.88% complete, ETA 00:01:39 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296828343350889 as seed for Random +104577.087 ops/s +Iteration 1: 109829.882 ops/s + +# Run progress: 89.39% complete, ETA 00:01:26 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296841643156362 as seed for Random +105393.038 ops/s +Iteration 1: 111081.786 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": + 110455.834 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson + +# Run progress: 90.91% complete, ETA 00:01:14 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296854967065701 as seed for Random +69003.268 ops/s +Iteration 1: 77041.678 ops/s + +# Run progress: 92.42% complete, ETA 00:01:02 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296868292892084 as seed for Random +69269.239 ops/s +Iteration 1: 81730.736 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": + 79386.207 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry + +# Run progress: 93.94% complete, ETA 00:00:49 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296881550280935 as seed for Random +327147.755 ops/s +Iteration 1: 371048.647 ops/s + +# Run progress: 95.45% complete, ETA 00:00:37 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296894742002756 as seed for Random +370961.069 ops/s +Iteration 1: 391137.882 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": + 381093.265 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java + +# Run progress: 96.97% complete, ETA 00:00:24 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296907974547470 as seed for Random +304832.139 ops/s +Iteration 1: 357740.787 ops/s + +# Run progress: 98.48% complete, ETA 00:00:12 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296921148738357 as seed for Random +304189.459 ops/s +Iteration 1: 360765.451 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": + 359253.119 ops/s + + +# Run complete. Total time: 00:13:44 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Deserialization.avajejsonb thrpt 2 624962.583 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 2 466918.677 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 2 820010.890 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 2 583335.098 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 2 297191.131 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 2 80740.006 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 2 353564.220 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 2 343625.586 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 2 455998.590 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 2 493959.078 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 2 468453.693 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 2 309085.725 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 2 171410.990 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 2 399677.771 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 2 230431.332 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 2 368204.261 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 2 85356.962 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 2 422320.899 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 2 413403.114 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 2 466533.498 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2 40338.546 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 2 99302.659 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 2 135489.105 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2 309484.974 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 2 111380.614 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 2 340699.598 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 2 139411.537 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 2 110455.834 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 2 79386.207 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 2 381093.265 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 2 359253.119 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt new file mode 100644 index 0000000..b0f6bdd --- /dev/null +++ b/output/users-deser-1-10.txt @@ -0,0 +1,4741 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:13:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300331112579632 as seed for Random +42457.020 ops/s +Iteration 1: 52226.177 ops/s + +# Run progress: 1.52% complete, ETA 00:14:57 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300344728992410 as seed for Random +44948.713 ops/s +Iteration 1: 55784.601 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": + 54005.389 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson + +# Run progress: 3.03% complete, ETA 00:14:38 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300358365605889 as seed for Random +30735.643 ops/s +Iteration 1: 38913.647 ops/s + +# Run progress: 4.55% complete, ETA 00:14:22 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300371945137531 as seed for Random +32451.146 ops/s +Iteration 1: 34937.054 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": + 36925.350 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon + +# Run progress: 6.06% complete, ETA 00:14:09 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300385866432016 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + +# Run progress: 7.58% complete, ETA 00:11:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300387232260814 as seed for Random + + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 9.09% complete, ETA 00:09:37 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300388700766439 as seed for Random +60084.243 ops/s +Iteration 1: 64672.521 ops/s + +# Run progress: 10.61% complete, ETA 00:10:02 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300402403335205 as seed for Random +62524.893 ops/s +Iteration 1: 73532.806 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 69102.664 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:10:17 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300415951561072 as seed for Random +43006.973 ops/s +Iteration 1: 47552.436 ops/s + +# Run progress: 13.64% complete, ETA 00:10:24 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300429687368172 as seed for Random +50466.302 ops/s +Iteration 1: 49597.355 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 48574.896 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 15.15% complete, ETA 00:10:29 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300443384464798 as seed for Random +25545.576 ops/s +Iteration 1: 36810.259 ops/s + +# Run progress: 16.67% complete, ETA 00:10:30 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300457250140297 as seed for Random +27222.486 ops/s +Iteration 1: 38684.767 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 37747.513 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 18.18% complete, ETA 00:10:29 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300470842758905 as seed for Random +5172.068 ops/s +Iteration 1: 6540.194 ops/s + +# Run progress: 19.70% complete, ETA 00:10:26 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300484529243410 as seed for Random +5232.045 ops/s +Iteration 1: 7228.035 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 6884.114 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 21.21% complete, ETA 00:10:21 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300498326589508 as seed for Random +28439.992 ops/s +Iteration 1: 29593.050 ops/s + +# Run progress: 22.73% complete, ETA 00:10:15 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300512232819984 as seed for Random +26192.457 ops/s +Iteration 1: 29134.760 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 29363.905 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 24.24% complete, ETA 00:10:09 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300525807705473 as seed for Random +27239.622 ops/s +Iteration 1: 29619.750 ops/s + +# Run progress: 25.76% complete, ETA 00:10:01 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300539566060962 as seed for Random +30551.877 ops/s +Iteration 1: 30223.483 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 29921.616 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 27.27% complete, ETA 00:09:52 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300553071357323 as seed for Random +31674.181 ops/s +Iteration 1: 37081.362 ops/s + +# Run progress: 28.79% complete, ETA 00:09:43 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300566783808651 as seed for Random +32907.268 ops/s +Iteration 1: 38341.806 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 37711.584 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:09:33 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300580329470987 as seed for Random +37084.523 ops/s +Iteration 1: 42570.674 ops/s + +# Run progress: 31.82% complete, ETA 00:09:23 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300593987966609 as seed for Random +37495.609 ops/s +Iteration 1: 43543.678 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 43057.176 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:09:13 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300607661159994 as seed for Random +36901.754 ops/s +Iteration 1: 40987.486 ops/s + +# Run progress: 34.85% complete, ETA 00:09:02 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300621412582235 as seed for Random +35661.922 ops/s +Iteration 1: 40831.585 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 40909.535 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 36.36% complete, ETA 00:08:52 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300635290912938 as seed for Random +27368.699 ops/s +Iteration 1: 32166.416 ops/s + +# Run progress: 37.88% complete, ETA 00:08:41 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300648890284833 as seed for Random +28278.929 ops/s +Iteration 1: 28956.618 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 30561.517 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon + +# Run progress: 39.39% complete, ETA 00:08:30 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300662561430923 as seed for Random +9600.733 ops/s +Iteration 1: 13041.498 ops/s + +# Run progress: 40.91% complete, ETA 00:08:18 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300676335056306 as seed for Random +11900.664 ops/s +Iteration 1: 14341.195 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": + 13691.347 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:08:07 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300690266289475 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@199865d9 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@79751f3e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7043a3a8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@10dd1d72 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@45491b01 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2a4d34ab with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4a36da9e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@68bf029d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 49 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7734bf2f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@38271c51 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53cb2b62 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6eb2e3c2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@67688e25 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@107ddc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@17423a3d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3d6cf97f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + + + +# Run progress: 43.94% complete, ETA 00:07:40 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300691826730870 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@60f4a236 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@37f17700 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5cbb4c8b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@38ad383 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@15e3d35f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 49 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1589b23c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2d060e9e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6f2b3bf2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7fa07fc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1d1019a7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@49f7c2f9 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@ffcddb2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@10ab4f7b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@371814a2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5d1db49f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2c28c99b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart + +# Run progress: 45.45% complete, ETA 00:07:15 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300693624713268 as seed for Random +32987.635 ops/s +Iteration 1: 37447.703 ops/s + +# Run progress: 46.97% complete, ETA 00:07:04 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300707306204898 as seed for Random +32976.914 ops/s +Iteration 1: 36072.661 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": + 36760.182 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare + +# Run progress: 48.48% complete, ETA 00:06:54 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300721048909154 as seed for Random +30698.497 ops/s +Iteration 1: 36278.784 ops/s + +# Run progress: 50.00% complete, ETA 00:06:43 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300734697340024 as seed for Random +30154.898 ops/s +Iteration 1: 39850.449 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": + 38064.617 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi + +# Run progress: 51.52% complete, ETA 00:06:32 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300748116546999 as seed for Random +25403.058 ops/s +Iteration 1: 27092.737 ops/s + +# Run progress: 53.03% complete, ETA 00:06:21 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300761870021041 as seed for Random +23933.548 ops/s +Iteration 1: 26844.725 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": + 26968.731 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson + +# Run progress: 54.55% complete, ETA 00:06:10 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300775592726884 as seed for Random +5392.033 ops/s +Iteration 1: 6784.655 ops/s + +# Run progress: 56.06% complete, ETA 00:05:59 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300789345008592 as seed for Random +5613.561 ops/s +Iteration 1: 7037.251 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": + 6910.953 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson + +# Run progress: 57.58% complete, ETA 00:05:47 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300803037364650 as seed for Random +30180.738 ops/s +Iteration 1: 48103.354 ops/s + +# Run progress: 59.09% complete, ETA 00:05:36 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300816371296030 as seed for Random +30321.892 ops/s +Iteration 1: 43587.628 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": + 45845.491 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson + +# Run progress: 60.61% complete, ETA 00:05:24 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300829787912554 as seed for Random +32420.774 ops/s +Iteration 1: 44512.133 ops/s + +# Run progress: 62.12% complete, ETA 00:05:12 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300843194855315 as seed for Random +25268.627 ops/s +Iteration 1: 36213.083 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": + 40362.608 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson + +# Run progress: 63.64% complete, ETA 00:05:00 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300856905818926 as seed for Random +27194.103 ops/s +Iteration 1: 38782.284 ops/s + +# Run progress: 65.15% complete, ETA 00:04:48 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300870755509460 as seed for Random +33351.796 ops/s +Iteration 1: 41480.553 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": + 40131.419 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson + +# Run progress: 66.67% complete, ETA 00:04:36 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300884391019719 as seed for Random +11564.083 ops/s +Iteration 1: 14824.521 ops/s + +# Run progress: 68.18% complete, ETA 00:04:24 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300897919267637 as seed for Random +11152.323 ops/s +Iteration 1: 14504.652 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": + 14664.587 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio + +# Run progress: 69.70% complete, ETA 00:04:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300911601686430 as seed for Random +7370.805 ops/s +Iteration 1: 9027.003 ops/s + +# Run progress: 71.21% complete, ETA 00:04:00 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300925321139288 as seed for Random +5275.198 ops/s +Iteration 1: 7753.869 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": + 8390.436 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple + +# Run progress: 72.73% complete, ETA 00:03:48 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300939248314054 as seed for Random +8065.487 ops/s +Iteration 1: 11258.930 ops/s + +# Run progress: 74.24% complete, ETA 00:03:35 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300953178044705 as seed for Random +6687.161 ops/s +Iteration 1: 8949.144 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": + 10104.037 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson + +# Run progress: 75.76% complete, ETA 00:03:23 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300967764571580 as seed for Random +17319.344 ops/s +Iteration 1: 28553.292 ops/s + +# Run progress: 77.27% complete, ETA 00:03:11 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300981366334784 as seed for Random +24512.266 ops/s +Iteration 1: 28756.699 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": + 28654.995 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson + +# Run progress: 78.79% complete, ETA 00:02:58 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300994822657755 as seed for Random +8486.907 ops/s +Iteration 1: 10297.827 ops/s + +# Run progress: 80.30% complete, ETA 00:02:46 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301008199136887 as seed for Random +8292.747 ops/s +Iteration 1: 9976.304 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": + 10137.066 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi + +# Run progress: 81.82% complete, ETA 00:02:33 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301021904647934 as seed for Random +24545.251 ops/s +Iteration 1: 28947.077 ops/s + +# Run progress: 83.33% complete, ETA 00:02:20 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301035362923383 as seed for Random +25297.003 ops/s +Iteration 1: 30162.134 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": + 29554.606 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson + +# Run progress: 84.85% complete, ETA 00:02:08 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301048766228279 as seed for Random +21557.353 ops/s +Iteration 1: 25894.404 ops/s + +# Run progress: 86.36% complete, ETA 00:01:55 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301062195699294 as seed for Random +21996.800 ops/s +Iteration 1: 24311.132 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": + 25102.768 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson + +# Run progress: 87.88% complete, ETA 00:01:42 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301075667502684 as seed for Random +10409.222 ops/s +Iteration 1: 10888.479 ops/s + +# Run progress: 89.39% complete, ETA 00:01:29 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301089184160476 as seed for Random +10956.696 ops/s +Iteration 1: 11631.514 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": + 11259.996 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson + +# Run progress: 90.91% complete, ETA 00:01:17 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301102584918265 as seed for Random +4706.343 ops/s +Iteration 1: 6184.546 ops/s + +# Run progress: 92.42% complete, ETA 00:01:04 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301116027051499 as seed for Random +6142.404 ops/s +Iteration 1: 7359.049 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": + 6771.798 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry + +# Run progress: 93.94% complete, ETA 00:00:51 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301129372718897 as seed for Random +36128.131 ops/s +Iteration 1: 34161.854 ops/s + +# Run progress: 95.45% complete, ETA 00:00:38 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301142744255008 as seed for Random +37328.259 ops/s +Iteration 1: 39022.275 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": + 36592.065 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java + +# Run progress: 96.97% complete, ETA 00:00:25 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301156345609115 as seed for Random +25464.197 ops/s +Iteration 1: 30631.210 ops/s + +# Run progress: 98.48% complete, ETA 00:00:12 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301169731424602 as seed for Random +26166.958 ops/s +Iteration 1: 31516.291 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": + 31073.751 ops/s + + +# Run complete. Total time: 00:14:12 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Deserialization.avajejsonb thrpt 2 54005.389 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 2 36925.350 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 2 69102.664 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 2 48574.896 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 2 37747.513 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 2 6884.114 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 2 29363.905 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 2 29921.616 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 2 37711.584 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 2 43057.176 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 2 40909.535 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 2 30561.517 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 2 13691.347 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 2 36760.182 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 2 38064.617 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 2 26968.731 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 2 6910.953 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 2 45845.491 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 2 40362.608 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 2 40131.419 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2 14664.587 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 2 8390.436 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 2 10104.037 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2 28654.995 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 2 10137.066 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 2 29554.606 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 2 25102.768 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 2 11259.996 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 2 6771.798 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 2 36592.065 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 2 31073.751 ops/s diff --git a/output/users-deser-1-1000.txt b/output/users-deser-1-1000.txt new file mode 100644 index 0000000..c377fe8 --- /dev/null +++ b/output/users-deser-1-1000.txt @@ -0,0 +1,4407 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:13:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302056125404708 as seed for Random +639.503 ops/s +Iteration 1: 678.844 ops/s + +# Run progress: 1.52% complete, ETA 00:14:22 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302069367322956 as seed for Random +624.321 ops/s +Iteration 1: 671.369 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": + 675.107 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson + +# Run progress: 3.03% complete, ETA 00:14:07 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302082591896442 as seed for Random +490.840 ops/s +Iteration 1: 546.703 ops/s + +# Run progress: 4.55% complete, ETA 00:13:54 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302095822232973 as seed for Random +486.222 ops/s +Iteration 1: 514.306 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": + 530.505 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon + +# Run progress: 6.06% complete, ETA 00:13:40 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302109106777202 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + +# Run progress: 7.58% complete, ETA 00:10:59 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302110113035676 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 9.09% complete, ETA 00:09:10 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302111051541220 as seed for Random +869.577 ops/s +Iteration 1: 887.876 ops/s + +# Run progress: 10.61% complete, ETA 00:09:34 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302124309697751 as seed for Random +878.615 ops/s +Iteration 1: 885.431 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 886.653 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:09:50 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302137564023164 as seed for Random +656.619 ops/s +Iteration 1: 670.646 ops/s + +# Run progress: 13.64% complete, ETA 00:09:59 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302150809244385 as seed for Random +413.933 ops/s +Iteration 1: 438.863 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 554.755 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 15.15% complete, ETA 00:10:04 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302164049106480 as seed for Random +414.633 ops/s +Iteration 1: 462.620 ops/s + +# Run progress: 16.67% complete, ETA 00:10:06 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302177322738293 as seed for Random +408.508 ops/s +Iteration 1: 474.870 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 468.745 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 18.18% complete, ETA 00:10:05 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302190598801999 as seed for Random +83.349 ops/s +Iteration 1: 93.389 ops/s + +# Run progress: 19.70% complete, ETA 00:10:04 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302204385389986 as seed for Random +82.671 ops/s +Iteration 1: 91.558 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 92.473 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 21.21% complete, ETA 00:10:01 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302218108421644 as seed for Random +388.420 ops/s +Iteration 1: 404.412 ops/s + +# Run progress: 22.73% complete, ETA 00:09:56 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302231386898628 as seed for Random +407.915 ops/s +Iteration 1: 435.550 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 419.981 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 24.24% complete, ETA 00:09:49 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302244710220925 as seed for Random +439.247 ops/s +Iteration 1: 454.858 ops/s + +# Run progress: 25.76% complete, ETA 00:09:41 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302258029415521 as seed for Random +431.030 ops/s +Iteration 1: 455.691 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 455.274 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 27.27% complete, ETA 00:09:34 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302271362369388 as seed for Random +472.397 ops/s +Iteration 1: 521.400 ops/s + +# Run progress: 28.79% complete, ETA 00:09:25 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302284579320739 as seed for Random +509.786 ops/s +Iteration 1: 512.422 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 516.911 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:09:15 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302297883609742 as seed for Random +540.909 ops/s +Iteration 1: 585.165 ops/s + +# Run progress: 31.82% complete, ETA 00:09:06 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302311423434919 as seed for Random +399.015 ops/s +Iteration 1: 480.372 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 532.768 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:08:57 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302324973902539 as seed for Random +401.555 ops/s +Iteration 1: 449.898 ops/s + +# Run progress: 34.85% complete, ETA 00:08:47 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302338587814811 as seed for Random +416.786 ops/s +Iteration 1: 459.169 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 454.533 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 36.36% complete, ETA 00:08:37 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302352184246310 as seed for Random +295.872 ops/s +Iteration 1: 324.435 ops/s + +# Run progress: 37.88% complete, ETA 00:08:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302365793830436 as seed for Random +306.113 ops/s +Iteration 1: 351.204 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 337.820 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon + +# Run progress: 39.39% complete, ETA 00:08:17 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302379442014278 as seed for Random +38.210 ops/s +Iteration 1: 104.825 ops/s + +# Run progress: 40.91% complete, ETA 00:08:08 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302394509945275 as seed for Random +39.205 ops/s +Iteration 1: 91.118 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": + 97.972 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:07:58 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302408926397255 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@10aafcc1 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@8da8444 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@8cac8c2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@15e3d35f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7b557ad with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53a2d41d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@13bc5478 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@79918934 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6ebbfec9 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@284543df with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6f2b3bf2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7fa07fc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1da01f72 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1d1019a7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e9780e2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@49520ad1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 49 more + + + +# Run progress: 43.94% complete, ETA 00:07:31 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302410402753398 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1231fa2f with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@60f082c0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4fa90bbd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 49 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6eb2e3c2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6d8b1800 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5a225f5b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@324f5671 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7734bf2f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6979ad4a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7eb8aca0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3dd9a7b6 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7d1c5894 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@68bf029d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1aa0433a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@78e5560f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4b816c04 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart + +# Run progress: 45.45% complete, ETA 00:07:06 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302411826873783 as seed for Random +361.558 ops/s +Iteration 1: 453.261 ops/s + +# Run progress: 46.97% complete, ETA 00:06:56 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302425389842140 as seed for Random +380.158 ops/s +Iteration 1: 473.212 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": + 463.237 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare + +# Run progress: 48.48% complete, ETA 00:06:46 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302439077331519 as seed for Random +355.819 ops/s +Iteration 1: 406.350 ops/s + +# Run progress: 50.00% complete, ETA 00:06:36 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302452727733678 as seed for Random +349.358 ops/s +Iteration 1: 420.384 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": + 413.367 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi + +# Run progress: 51.52% complete, ETA 00:06:25 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302466351073569 as seed for Random +225.184 ops/s +Iteration 1: 288.427 ops/s + +# Run progress: 53.03% complete, ETA 00:06:15 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302480078252541 as seed for Random +239.985 ops/s +Iteration 1: 265.304 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": + 276.865 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson + +# Run progress: 54.55% complete, ETA 00:06:04 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302493778356249 as seed for Random +60.546 ops/s +Iteration 1: 69.988 ops/s + +# Run progress: 56.06% complete, ETA 00:05:53 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302508052133228 as seed for Random +65.184 ops/s +Iteration 1: 73.216 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": + 71.602 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson + +# Run progress: 57.58% complete, ETA 00:05:43 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302522294225106 as seed for Random +349.047 ops/s +Iteration 1: 428.704 ops/s + +# Run progress: 59.09% complete, ETA 00:05:32 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302535883674395 as seed for Random +352.972 ops/s +Iteration 1: 438.208 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": + 433.456 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson + +# Run progress: 60.61% complete, ETA 00:05:20 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302549544796015 as seed for Random +301.384 ops/s +Iteration 1: 408.217 ops/s + +# Run progress: 62.12% complete, ETA 00:05:09 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302563187590227 as seed for Random +213.873 ops/s +Iteration 1: 395.983 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": + 402.100 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson + +# Run progress: 63.64% complete, ETA 00:04:57 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302576745576000 as seed for Random +388.638 ops/s +Iteration 1: 450.046 ops/s + +# Run progress: 65.15% complete, ETA 00:04:45 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302590340405598 as seed for Random +398.061 ops/s +Iteration 1: 462.280 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": + 456.163 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson + +# Run progress: 66.67% complete, ETA 00:04:33 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302604088310502 as seed for Random +97.561 ops/s +Iteration 1: 236.208 ops/s + +# Run progress: 68.18% complete, ETA 00:04:22 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302618047231209 as seed for Random +152.718 ops/s +Iteration 1: 241.265 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": + 238.736 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio + +# Run progress: 69.70% complete, ETA 00:04:10 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302631891832633 as seed for Random diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt new file mode 100644 index 0000000..8536861 --- /dev/null +++ b/output/users-ser-1-1.txt @@ -0,0 +1,3755 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:13:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295287294176376 as seed for Random +1034900.489 ops/s +Iteration 1: 968466.294 ops/s + +# Run progress: 1.52% complete, ETA 00:14:19 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295300572749081 as seed for Random +954779.547 ops/s +Iteration 1: 821383.507 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": + 894924.900 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson + +# Run progress: 3.03% complete, ETA 00:14:10 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295314051667691 as seed for Random +638826.631 ops/s +Iteration 1: 668161.248 ops/s + +# Run progress: 4.55% complete, ETA 00:14:01 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295327592521594 as seed for Random +812502.283 ops/s +Iteration 1: 878192.665 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": + 773176.956 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon + +# Run progress: 6.06% complete, ETA 00:13:50 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295340740335313 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + +# Run progress: 7.58% complete, ETA 00:11:05 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295341745081463 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 9.09% complete, ETA 00:09:15 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295342704369908 as seed for Random +1115095.450 ops/s +Iteration 1: 1153687.134 ops/s + +# Run progress: 10.61% complete, ETA 00:09:38 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295355759376150 as seed for Random +1124418.467 ops/s +Iteration 1: 1166619.359 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 1160153.247 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:09:51 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295368792988016 as seed for Random +852149.762 ops/s +Iteration 1: 928562.739 ops/s + +# Run progress: 13.64% complete, ETA 00:09:59 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295381863154422 as seed for Random +916338.388 ops/s +Iteration 1: 891456.253 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 910009.496 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 15.15% complete, ETA 00:10:03 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295395077542404 as seed for Random +734709.343 ops/s +Iteration 1: 829711.927 ops/s + +# Run progress: 16.67% complete, ETA 00:10:05 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295408298996898 as seed for Random +787019.420 ops/s +Iteration 1: 865996.798 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 847854.362 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 18.18% complete, ETA 00:10:04 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295421565943165 as seed for Random +2845.776 ops/s +Iteration 1: 1717.681 ops/s + +# Run progress: 19.70% complete, ETA 00:10:01 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295434674413455 as seed for Random +2234.105 ops/s +Iteration 1: 1168.221 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 1442.951 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 21.21% complete, ETA 00:09:56 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295447749260973 as seed for Random +485388.425 ops/s +Iteration 1: 536953.788 ops/s + +# Run progress: 22.73% complete, ETA 00:09:50 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295460938772938 as seed for Random +476144.484 ops/s +Iteration 1: 526335.289 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 531644.539 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 24.24% complete, ETA 00:09:44 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295474084180957 as seed for Random +350034.287 ops/s +Iteration 1: 384281.323 ops/s + +# Run progress: 25.76% complete, ETA 00:09:36 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295487223409288 as seed for Random +296062.124 ops/s +Iteration 1: 319232.539 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 351756.931 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 27.27% complete, ETA 00:09:28 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295500370829748 as seed for Random +762861.694 ops/s +Iteration 1: 789392.897 ops/s + +# Run progress: 28.79% complete, ETA 00:09:19 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295513535431072 as seed for Random +807467.634 ops/s +Iteration 1: 850198.846 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 819795.872 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:09:10 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295526700536970 as seed for Random +751303.058 ops/s +Iteration 1: 809051.348 ops/s + +# Run progress: 31.82% complete, ETA 00:09:01 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295539837594288 as seed for Random +784182.079 ops/s +Iteration 1: 825448.754 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 817250.051 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:08:51 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295552998279909 as seed for Random +776088.365 ops/s +Iteration 1: 823540.535 ops/s + +# Run progress: 34.85% complete, ETA 00:08:41 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295566304690964 as seed for Random +743827.128 ops/s +Iteration 1: 751009.947 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 787275.241 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 36.36% complete, ETA 00:08:31 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295579440020935 as seed for Random +126436.668 ops/s +Iteration 1: 134901.051 ops/s + +# Run progress: 37.88% complete, ETA 00:08:20 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295592587800964 as seed for Random +127793.965 ops/s +Iteration 1: 135013.868 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 134957.460 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon + +# Run progress: 39.39% complete, ETA 00:08:10 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295605694245643 as seed for Random +352475.768 ops/s +Iteration 1: 398933.713 ops/s + +# Run progress: 40.91% complete, ETA 00:07:59 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295618795440263 as seed for Random +318304.331 ops/s +Iteration 1: 346113.994 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": + 372523.854 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:07:47 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295631965965384 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 37 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + + + +# Run progress: 43.94% complete, ETA 00:07:21 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295633011150972 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 37 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart + +# Run progress: 45.45% complete, ETA 00:06:56 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295634068278022 as seed for Random +347943.392 ops/s +Iteration 1: 342330.227 ops/s + +# Run progress: 46.97% complete, ETA 00:06:46 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295647217589923 as seed for Random +307003.432 ops/s +Iteration 1: 306468.845 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": + 324399.536 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare + +# Run progress: 48.48% complete, ETA 00:06:36 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295660302745586 as seed for Random +847869.909 ops/s +Iteration 1: 952095.775 ops/s + +# Run progress: 50.00% complete, ETA 00:06:26 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295673428682869 as seed for Random +790985.571 ops/s +Iteration 1: 809920.331 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": + 881008.053 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi + +# Run progress: 51.52% complete, ETA 00:06:15 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295686640617857 as seed for Random +338215.912 ops/s +Iteration 1: 306932.502 ops/s + +# Run progress: 53.03% complete, ETA 00:06:05 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295699809715134 as seed for Random +342428.764 ops/s +Iteration 1: 336850.426 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": + 321891.464 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson + +# Run progress: 54.55% complete, ETA 00:05:54 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295713075196957 as seed for Random +270691.376 ops/s +Iteration 1: 324112.191 ops/s + +# Run progress: 56.06% complete, ETA 00:05:44 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295726280024148 as seed for Random +242899.505 ops/s +Iteration 1: 270853.451 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": + 297482.821 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson + +# Run progress: 57.58% complete, ETA 00:05:33 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295739496540518 as seed for Random +407639.692 ops/s +Iteration 1: 429507.332 ops/s + +# Run progress: 59.09% complete, ETA 00:05:22 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295752652677261 as seed for Random +399180.818 ops/s +Iteration 1: 428071.127 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": + 428789.230 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson + +# Run progress: 60.61% complete, ETA 00:05:11 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295765867481804 as seed for Random +236607.869 ops/s +Iteration 1: 250949.539 ops/s + +# Run progress: 62.12% complete, ETA 00:04:59 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295779008500573 as seed for Random +229726.337 ops/s +Iteration 1: 233150.091 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": + 242049.815 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson + +# Run progress: 63.64% complete, ETA 00:04:48 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295792181310507 as seed for Random +867246.756 ops/s +Iteration 1: 880072.228 ops/s + +# Run progress: 65.15% complete, ETA 00:04:37 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295805374190390 as seed for Random +874262.963 ops/s +Iteration 1: 927945.058 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": + 904008.643 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson + +# Run progress: 66.67% complete, ETA 00:04:25 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295818534115408 as seed for Random +626022.578 ops/s +Iteration 1: 711584.706 ops/s + +# Run progress: 68.18% complete, ETA 00:04:14 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295831734170382 as seed for Random +647333.523 ops/s +Iteration 1: 663686.844 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": + 687635.775 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio + +# Run progress: 69.70% complete, ETA 00:04:02 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295844949256182 as seed for Random +97794.659 ops/s +Iteration 1: 114125.454 ops/s + +# Run progress: 71.21% complete, ETA 00:03:50 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295858075326494 as seed for Random +100478.797 ops/s +Iteration 1: 98414.979 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": + 106270.217 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple + +# Run progress: 72.73% complete, ETA 00:03:39 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295871160695004 as seed for Random +149343.298 ops/s +Iteration 1: 163071.375 ops/s + +# Run progress: 74.24% complete, ETA 00:03:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295884361931409 as seed for Random +98865.395 ops/s +Iteration 1: 101103.115 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": + 132087.245 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson + +# Run progress: 75.76% complete, ETA 00:03:15 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295897513194553 as seed for Random +415305.594 ops/s +Iteration 1: 454216.307 ops/s + +# Run progress: 77.27% complete, ETA 00:03:03 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295910705811838 as seed for Random +416592.690 ops/s +Iteration 1: 446175.504 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": + 450195.906 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson + +# Run progress: 78.79% complete, ETA 00:02:51 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295923937622234 as seed for Random +128894.048 ops/s +Iteration 1: 144909.385 ops/s + +# Run progress: 80.30% complete, ETA 00:02:39 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295937080397378 as seed for Random +133755.608 ops/s +Iteration 1: 151008.019 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": + 147958.702 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi + +# Run progress: 81.82% complete, ETA 00:02:27 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295950247269827 as seed for Random +381188.771 ops/s +Iteration 1: 412149.020 ops/s + +# Run progress: 83.33% complete, ETA 00:02:15 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295963424445805 as seed for Random +366801.077 ops/s +Iteration 1: 369725.764 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": + 390937.392 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson + +# Run progress: 84.85% complete, ETA 00:02:03 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295976770590715 as seed for Random +530465.557 ops/s +Iteration 1: 643485.697 ops/s + +# Run progress: 86.36% complete, ETA 00:01:50 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=295990184244443 as seed for Random +573909.149 ops/s +Iteration 1: 679475.373 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": + 661480.535 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson + +# Run progress: 87.88% complete, ETA 00:01:38 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296003429644136 as seed for Random +110769.416 ops/s +Iteration 1: 134191.014 ops/s + +# Run progress: 89.39% complete, ETA 00:01:26 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296016836430357 as seed for Random +132986.219 ops/s +Iteration 1: 152915.691 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": + 143553.352 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson + +# Run progress: 90.91% complete, ETA 00:01:14 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296030021075207 as seed for Random +72427.270 ops/s +Iteration 1: 83963.537 ops/s + +# Run progress: 92.42% complete, ETA 00:01:01 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296043182203580 as seed for Random +69466.722 ops/s +Iteration 1: 79770.771 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": + 81867.154 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry + +# Run progress: 93.94% complete, ETA 00:00:49 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296056376616071 as seed for Random +83723.700 ops/s +Iteration 1: 94414.630 ops/s + +# Run progress: 95.45% complete, ETA 00:00:37 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296069529551569 as seed for Random +97053.309 ops/s +Iteration 1: 105417.359 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": + 99915.994 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java + +# Run progress: 96.97% complete, ETA 00:00:24 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296082732971918 as seed for Random +154552.999 ops/s +Iteration 1: 174829.042 ops/s + +# Run progress: 98.48% complete, ETA 00:00:12 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=296095902900873 as seed for Random +135185.322 ops/s +Iteration 1: 153253.069 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": + 164041.055 ops/s + + +# Run complete. Total time: 00:13:41 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 2 894924.900 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 2 773176.956 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 2 1160153.247 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 2 910009.496 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 2 847854.362 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 2 1442.951 ops/s +c.g.f.j.databind.Serialization.genson thrpt 2 531644.539 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2 351756.931 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 2 819795.872 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 2 817250.051 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 2 787275.241 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 2 134957.460 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 2 372523.854 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 2 324399.536 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 2 881008.053 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 2 321891.464 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2 297482.821 ops/s +c.g.f.j.stream.Serialization.genson thrpt 2 428789.230 ops/s +c.g.f.j.stream.Serialization.gson thrpt 2 242049.815 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 2 904008.643 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 2 687635.775 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 2 106270.217 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 2 132087.245 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2 450195.906 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 2 147958.702 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 2 390937.392 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 2 661480.535 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 2 143553.352 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 2 81867.154 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 2 99915.994 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 2 164041.055 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt new file mode 100644 index 0000000..c431309 --- /dev/null +++ b/output/users-ser-1-10.txt @@ -0,0 +1,3755 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:13:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299487476182758 as seed for Random +139288.436 ops/s +Iteration 1: 116164.639 ops/s + +# Run progress: 1.52% complete, ETA 00:14:01 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299500603315154 as seed for Random +114601.188 ops/s +Iteration 1: 112898.066 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": + 114531.353 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson + +# Run progress: 3.03% complete, ETA 00:13:54 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299513769231977 as seed for Random +87867.027 ops/s +Iteration 1: 90234.510 ops/s + +# Run progress: 4.55% complete, ETA 00:13:45 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299527031546388 as seed for Random +93555.512 ops/s +Iteration 1: 89599.726 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": + 89917.118 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon + +# Run progress: 6.06% complete, ETA 00:13:34 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299540404759116 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + +# Run progress: 7.58% complete, ETA 00:10:56 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299541508435046 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 9.09% complete, ETA 00:09:09 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299542585239721 as seed for Random +112893.372 ops/s +Iteration 1: 103308.346 ops/s + +# Run progress: 10.61% complete, ETA 00:09:34 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299556218369998 as seed for Random +107591.612 ops/s +Iteration 1: 125709.078 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 114508.712 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:09:52 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299569584345545 as seed for Random +88240.952 ops/s +Iteration 1: 98064.031 ops/s + +# Run progress: 13.64% complete, ETA 00:10:02 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299582804833954 as seed for Random +95570.133 ops/s +Iteration 1: 80490.840 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 89277.436 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 15.15% complete, ETA 00:10:06 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299596258871700 as seed for Random +50370.879 ops/s +Iteration 1: 54807.839 ops/s + +# Run progress: 16.67% complete, ETA 00:10:09 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299609707868069 as seed for Random +47934.207 ops/s +Iteration 1: 52644.947 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 53726.393 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 18.18% complete, ETA 00:10:08 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299623291381425 as seed for Random +603.755 ops/s +Iteration 1: 286.090 ops/s + +# Run progress: 19.70% complete, ETA 00:10:07 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299636867242000 as seed for Random +577.643 ops/s +Iteration 1: 305.666 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 295.878 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 21.21% complete, ETA 00:10:03 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299650369195926 as seed for Random +43923.643 ops/s +Iteration 1: 44252.185 ops/s + +# Run progress: 22.73% complete, ETA 00:09:58 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299663905991386 as seed for Random +42362.442 ops/s +Iteration 1: 44065.961 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 44159.073 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 24.24% complete, ETA 00:09:52 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299677454366240 as seed for Random +27565.352 ops/s +Iteration 1: 32621.386 ops/s + +# Run progress: 25.76% complete, ETA 00:09:45 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299691040263365 as seed for Random +33959.744 ops/s +Iteration 1: 34735.259 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 33678.323 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 27.27% complete, ETA 00:09:37 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299704264736600 as seed for Random +92676.109 ops/s +Iteration 1: 91268.638 ops/s + +# Run progress: 28.79% complete, ETA 00:09:28 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299717503136750 as seed for Random +96834.705 ops/s +Iteration 1: 99406.102 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 95337.370 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:09:18 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299730718509129 as seed for Random +98923.223 ops/s +Iteration 1: 97688.315 ops/s + +# Run progress: 31.82% complete, ETA 00:09:09 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299743951690012 as seed for Random +100752.377 ops/s +Iteration 1: 103585.805 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 100637.060 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:08:58 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299757153986251 as seed for Random +96973.159 ops/s +Iteration 1: 95493.949 ops/s + +# Run progress: 34.85% complete, ETA 00:08:48 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299770346850521 as seed for Random +88990.209 ops/s +Iteration 1: 85263.506 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 90378.728 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 36.36% complete, ETA 00:08:37 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299783610829078 as seed for Random +13620.604 ops/s +Iteration 1: 15717.134 ops/s + +# Run progress: 37.88% complete, ETA 00:08:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299796798250227 as seed for Random +13481.138 ops/s +Iteration 1: 12860.643 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 14288.889 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon + +# Run progress: 39.39% complete, ETA 00:08:15 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299810346076392 as seed for Random +29989.486 ops/s +Iteration 1: 32013.119 ops/s + +# Run progress: 40.91% complete, ETA 00:08:05 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299824030866699 as seed for Random +30198.786 ops/s +Iteration 1: 32461.455 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": + 32237.287 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:07:54 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299837565490902 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 37 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + + + +# Run progress: 43.94% complete, ETA 00:07:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299838982253990 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 37 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart + +# Run progress: 45.45% complete, ETA 00:07:03 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299840423808438 as seed for Random +29740.100 ops/s +Iteration 1: 30385.236 ops/s + +# Run progress: 46.97% complete, ETA 00:06:53 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299853924621223 as seed for Random +29782.695 ops/s +Iteration 1: 30592.454 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": + 30488.845 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare + +# Run progress: 48.48% complete, ETA 00:06:43 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299867453787825 as seed for Random +83475.639 ops/s +Iteration 1: 90907.082 ops/s + +# Run progress: 50.00% complete, ETA 00:06:32 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299880909259227 as seed for Random +83122.741 ops/s +Iteration 1: 83749.061 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": + 87328.072 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi + +# Run progress: 51.52% complete, ETA 00:06:22 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299894407983654 as seed for Random +30010.501 ops/s +Iteration 1: 32223.395 ops/s + +# Run progress: 53.03% complete, ETA 00:06:11 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299908111208517 as seed for Random +29811.025 ops/s +Iteration 1: 34746.240 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": + 33484.818 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson + +# Run progress: 54.55% complete, ETA 00:06:01 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299921629769128 as seed for Random +23042.830 ops/s +Iteration 1: 28318.219 ops/s + +# Run progress: 56.06% complete, ETA 00:05:50 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299935377145675 as seed for Random +24977.463 ops/s +Iteration 1: 29081.426 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": + 28699.823 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson + +# Run progress: 57.58% complete, ETA 00:05:39 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299948892685298 as seed for Random +34450.341 ops/s +Iteration 1: 39226.340 ops/s + +# Run progress: 59.09% complete, ETA 00:05:28 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299962446761400 as seed for Random +35379.895 ops/s +Iteration 1: 41351.861 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": + 40289.101 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson + +# Run progress: 60.61% complete, ETA 00:05:17 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299976127967810 as seed for Random +14096.342 ops/s +Iteration 1: 14491.045 ops/s + +# Run progress: 62.12% complete, ETA 00:05:05 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=299989869280413 as seed for Random +9965.294 ops/s +Iteration 1: 14342.733 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": + 14416.889 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson + +# Run progress: 63.64% complete, ETA 00:04:54 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300003638499868 as seed for Random +82401.037 ops/s +Iteration 1: 97815.672 ops/s + +# Run progress: 65.15% complete, ETA 00:04:43 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300017150099156 as seed for Random +85295.696 ops/s +Iteration 1: 89569.896 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": + 93692.784 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson + +# Run progress: 66.67% complete, ETA 00:04:31 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300030647263697 as seed for Random +50425.244 ops/s +Iteration 1: 63573.511 ops/s + +# Run progress: 68.18% complete, ETA 00:04:19 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300044084583708 as seed for Random +54212.139 ops/s +Iteration 1: 65310.236 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": + 64441.873 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio + +# Run progress: 69.70% complete, ETA 00:04:07 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300057663610521 as seed for Random +8286.536 ops/s +Iteration 1: 10832.232 ops/s + +# Run progress: 71.21% complete, ETA 00:03:55 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300071137875319 as seed for Random +8777.187 ops/s +Iteration 1: 10619.001 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": + 10725.616 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple + +# Run progress: 72.73% complete, ETA 00:03:43 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300084718739879 as seed for Random +6672.752 ops/s +Iteration 1: 7610.534 ops/s + +# Run progress: 74.24% complete, ETA 00:03:31 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300098222075143 as seed for Random +6783.292 ops/s +Iteration 1: 7497.711 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": + 7554.123 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson + +# Run progress: 75.76% complete, ETA 00:03:19 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300111829370628 as seed for Random +27266.289 ops/s +Iteration 1: 29347.074 ops/s + +# Run progress: 77.27% complete, ETA 00:03:07 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300125378790548 as seed for Random +32280.378 ops/s +Iteration 1: 32920.126 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": + 31133.600 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson + +# Run progress: 78.79% complete, ETA 00:02:55 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300138924015725 as seed for Random +9642.738 ops/s +Iteration 1: 11948.562 ops/s + +# Run progress: 80.30% complete, ETA 00:02:42 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300152368658020 as seed for Random +10519.131 ops/s +Iteration 1: 12236.918 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": + 12092.740 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi + +# Run progress: 81.82% complete, ETA 00:02:30 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300165809157475 as seed for Random +34878.148 ops/s +Iteration 1: 38602.108 ops/s + +# Run progress: 83.33% complete, ETA 00:02:18 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300179212559356 as seed for Random +33168.819 ops/s +Iteration 1: 37622.052 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": + 38112.080 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson + +# Run progress: 84.85% complete, ETA 00:02:05 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300192857696511 as seed for Random +66993.986 ops/s +Iteration 1: 80183.820 ops/s + +# Run progress: 86.36% complete, ETA 00:01:53 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300206570536026 as seed for Random +42915.930 ops/s +Iteration 1: 44458.780 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": + 62321.300 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson + +# Run progress: 87.88% complete, ETA 00:01:41 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300220275981658 as seed for Random +8467.812 ops/s +Iteration 1: 11149.868 ops/s + +# Run progress: 89.39% complete, ETA 00:01:28 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300234207120873 as seed for Random +8186.878 ops/s +Iteration 1: 12535.543 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": + 11842.706 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson + +# Run progress: 90.91% complete, ETA 00:01:15 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300247831001002 as seed for Random +4809.287 ops/s +Iteration 1: 5762.476 ops/s + +# Run progress: 92.42% complete, ETA 00:01:03 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300261499048981 as seed for Random +4712.322 ops/s +Iteration 1: 5783.885 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": + 5773.181 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry + +# Run progress: 93.94% complete, ETA 00:00:50 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300275150956308 as seed for Random +6178.747 ops/s +Iteration 1: 6167.751 ops/s + +# Run progress: 95.45% complete, ETA 00:00:38 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300288737229235 as seed for Random +5996.106 ops/s +Iteration 1: 6691.274 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": + 6429.512 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java + +# Run progress: 96.97% complete, ETA 00:00:25 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300302442501601 as seed for Random +9854.222 ops/s +Iteration 1: 11724.326 ops/s + +# Run progress: 98.48% complete, ETA 00:00:12 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=300316181620083 as seed for Random +10560.771 ops/s +Iteration 1: 11539.264 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": + 11631.795 ops/s + + +# Run complete. Total time: 00:14:01 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 2 114531.353 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 2 89917.118 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 2 114508.712 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 2 89277.436 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 2 53726.393 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 2 295.878 ops/s +c.g.f.j.databind.Serialization.genson thrpt 2 44159.073 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2 33678.323 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 2 95337.370 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 2 100637.060 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 2 90378.728 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 2 14288.889 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 2 32237.287 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 2 30488.845 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 2 87328.072 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 2 33484.818 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2 28699.823 ops/s +c.g.f.j.stream.Serialization.genson thrpt 2 40289.101 ops/s +c.g.f.j.stream.Serialization.gson thrpt 2 14416.889 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 2 93692.784 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 2 64441.873 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 2 10725.616 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 2 7554.123 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2 31133.600 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 2 12092.740 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 2 38112.080 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 2 62321.300 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 2 11842.706 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 2 5773.181 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 2 6429.512 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 2 11631.795 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt new file mode 100644 index 0000000..2e14719 --- /dev/null +++ b/output/users-ser-1-100.txt @@ -0,0 +1,47 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:13:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=298585768449823 as seed for Random +10320.877 ops/s +Iteration 1: 10780.606 ops/s + +# Run progress: 1.52% complete, ETA 00:14:22 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=298599019564176 as seed for Random +11059.269 ops/s +Iteration 1: 10597.304 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": + 10688.955 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson + +# Run progress: 3.03% complete, ETA 00:14:08 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=298612265677184 as seed for Random diff --git a/output/users-ser-1-1000.txt b/output/users-ser-1-1000.txt new file mode 100644 index 0000000..b560de1 --- /dev/null +++ b/output/users-ser-1-1000.txt @@ -0,0 +1,3667 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:13:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301184183709345 as seed for Random +831.585 ops/s +Iteration 1: 827.469 ops/s + +# Run progress: 1.52% complete, ETA 00:14:38 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301197891029871 as seed for Random +876.503 ops/s +Iteration 1: 992.124 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": + 909.796 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson + +# Run progress: 3.03% complete, ETA 00:14:30 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301211413900123 as seed for Random +592.243 ops/s +Iteration 1: 738.225 ops/s + +# Run progress: 4.55% complete, ETA 00:14:16 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301224989678953 as seed for Random +623.679 ops/s +Iteration 1: 712.452 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": + 725.338 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon + +# Run progress: 6.06% complete, ETA 00:14:01 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301238497239048 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + +# Run progress: 7.58% complete, ETA 00:11:19 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301239936441799 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 9.09% complete, ETA 00:09:32 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301241385484736 as seed for Random +1069.947 ops/s +Iteration 1: 1172.104 ops/s + +# Run progress: 10.61% complete, ETA 00:09:56 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301255092638299 as seed for Random +1142.742 ops/s +Iteration 1: 1251.413 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 1211.758 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:10:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301268767566234 as seed for Random +875.177 ops/s +Iteration 1: 849.573 ops/s + +# Run progress: 13.64% complete, ETA 00:10:21 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301282419406293 as seed for Random +868.797 ops/s +Iteration 1: 909.350 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 879.461 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 15.15% complete, ETA 00:10:25 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301295955482407 as seed for Random +271.296 ops/s +Iteration 1: 298.903 ops/s + +# Run progress: 16.67% complete, ETA 00:10:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301309642460967 as seed for Random +278.050 ops/s +Iteration 1: 273.585 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 286.244 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 18.18% complete, ETA 00:10:26 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301323259177157 as seed for Random +43.083 ops/s +Iteration 1: 33.322 ops/s + +# Run progress: 19.70% complete, ETA 00:10:28 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301338470453959 as seed for Random +39.504 ops/s +Iteration 1: 36.314 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 34.818 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 21.21% complete, ETA 00:10:28 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301353479407427 as seed for Random +408.506 ops/s +Iteration 1: 435.844 ops/s + +# Run progress: 22.73% complete, ETA 00:10:22 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301367170300904 as seed for Random +512.897 ops/s +Iteration 1: 494.776 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 465.310 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 24.24% complete, ETA 00:10:14 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301380815535337 as seed for Random +302.031 ops/s +Iteration 1: 337.703 ops/s + +# Run progress: 25.76% complete, ETA 00:10:06 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301394379564386 as seed for Random +312.524 ops/s +Iteration 1: 320.302 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 329.002 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 27.27% complete, ETA 00:09:57 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301408120242253 as seed for Random +712.549 ops/s +Iteration 1: 674.509 ops/s + +# Run progress: 28.79% complete, ETA 00:09:47 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301421698069576 as seed for Random +643.657 ops/s +Iteration 1: 679.899 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 677.204 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:09:37 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301435440385751 as seed for Random +714.441 ops/s +Iteration 1: 736.283 ops/s + +# Run progress: 31.82% complete, ETA 00:09:27 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301449192902852 as seed for Random +707.500 ops/s +Iteration 1: 759.821 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 748.052 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:09:17 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301462780447673 as seed for Random +585.908 ops/s +Iteration 1: 668.922 ops/s + +# Run progress: 34.85% complete, ETA 00:09:06 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301476316685461 as seed for Random +693.989 ops/s +Iteration 1: 750.684 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 709.803 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 36.36% complete, ETA 00:08:54 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301489854084738 as seed for Random +114.060 ops/s +Iteration 1: 120.384 ops/s + +# Run progress: 37.88% complete, ETA 00:08:44 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301503817682799 as seed for Random +112.943 ops/s +Iteration 1: 122.455 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 121.420 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon + +# Run progress: 39.39% complete, ETA 00:08:33 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301517730778167 as seed for Random +251.265 ops/s +Iteration 1: 284.830 ops/s + +# Run progress: 40.91% complete, ETA 00:08:21 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301531902548740 as seed for Random +262.399 ops/s +Iteration 1: 267.615 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": + 276.222 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:08:10 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301546005380365 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 37 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + + + +# Run progress: 43.94% complete, ETA 00:07:43 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301547657585869 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 37 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart + +# Run progress: 45.45% complete, ETA 00:07:19 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301549935571531 as seed for Random +298.342 ops/s +Iteration 1: 314.959 ops/s + +# Run progress: 46.97% complete, ETA 00:07:08 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301563572665277 as seed for Random +333.018 ops/s +Iteration 1: 370.007 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": + 342.483 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare + +# Run progress: 48.48% complete, ETA 00:06:57 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301577100674568 as seed for Random +831.314 ops/s +Iteration 1: 910.820 ops/s + +# Run progress: 50.00% complete, ETA 00:06:46 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301590536871028 as seed for Random +801.215 ops/s +Iteration 1: 949.311 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": + 930.066 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi + +# Run progress: 51.52% complete, ETA 00:06:35 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301604040846398 as seed for Random +352.010 ops/s +Iteration 1: 360.281 ops/s + +# Run progress: 53.03% complete, ETA 00:06:23 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301617603161413 as seed for Random +342.163 ops/s +Iteration 1: 348.718 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": + 354.500 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson + +# Run progress: 54.55% complete, ETA 00:06:12 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301631154439899 as seed for Random +252.904 ops/s +Iteration 1: 265.355 ops/s + +# Run progress: 56.06% complete, ETA 00:06:01 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301645089629861 as seed for Random +221.628 ops/s +Iteration 1: 279.031 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": + 272.193 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson + +# Run progress: 57.58% complete, ETA 00:05:49 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301658844151861 as seed for Random +400.464 ops/s +Iteration 1: 443.448 ops/s + +# Run progress: 59.09% complete, ETA 00:05:38 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301672491899206 as seed for Random +364.768 ops/s +Iteration 1: 483.011 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": + 463.230 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson + +# Run progress: 60.61% complete, ETA 00:05:26 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301686257023843 as seed for Random +141.758 ops/s +Iteration 1: 165.342 ops/s + +# Run progress: 62.12% complete, ETA 00:05:14 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301700098980814 as seed for Random +130.975 ops/s +Iteration 1: 160.355 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": + 162.848 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson + +# Run progress: 63.64% complete, ETA 00:05:02 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301713938396476 as seed for Random +860.570 ops/s +Iteration 1: 886.305 ops/s + +# Run progress: 65.15% complete, ETA 00:04:50 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301727439600586 as seed for Random +852.476 ops/s +Iteration 1: 859.356 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": + 872.831 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson + +# Run progress: 66.67% complete, ETA 00:04:38 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301741058205528 as seed for Random +663.353 ops/s +Iteration 1: 699.244 ops/s + +# Run progress: 68.18% complete, ETA 00:04:26 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301754660255276 as seed for Random +643.756 ops/s +Iteration 1: 895.039 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": + 797.142 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio + +# Run progress: 69.70% complete, ETA 00:04:13 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301767967336241 as seed for Random +135.071 ops/s +Iteration 1: 143.177 ops/s + +# Run progress: 71.21% complete, ETA 00:04:01 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301781465174630 as seed for Random +132.281 ops/s +Iteration 1: 129.930 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": + 136.553 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple + +# Run progress: 72.73% complete, ETA 00:03:49 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301795151415245 as seed for Random +89.198 ops/s +Iteration 1: 96.127 ops/s + +# Run progress: 74.24% complete, ETA 00:03:36 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301808954422383 as seed for Random +91.749 ops/s +Iteration 1: 92.032 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": + 94.080 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson + +# Run progress: 75.76% complete, ETA 00:03:24 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301822754541480 as seed for Random +351.481 ops/s +Iteration 1: 420.432 ops/s + +# Run progress: 77.27% complete, ETA 00:03:11 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301836264848501 as seed for Random +374.495 ops/s +Iteration 1: 441.894 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": + 431.163 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson + +# Run progress: 78.79% complete, ETA 00:02:59 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301849682333488 as seed for Random +105.245 ops/s +Iteration 1: 121.631 ops/s + +# Run progress: 80.30% complete, ETA 00:02:46 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301863340526242 as seed for Random +115.395 ops/s +Iteration 1: 119.138 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": + 120.385 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi + +# Run progress: 81.82% complete, ETA 00:02:34 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301877325640649 as seed for Random +444.476 ops/s +Iteration 1: 473.533 ops/s + +# Run progress: 83.33% complete, ETA 00:02:21 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301890660521723 as seed for Random +486.041 ops/s +Iteration 1: 513.414 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": + 493.473 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson + +# Run progress: 84.85% complete, ETA 00:02:08 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301903881556870 as seed for Random +638.607 ops/s +Iteration 1: 720.942 ops/s + +# Run progress: 86.36% complete, ETA 00:01:55 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301917093885293 as seed for Random +634.765 ops/s +Iteration 1: 697.784 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": + 709.363 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson + +# Run progress: 87.88% complete, ETA 00:01:42 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301930275467746 as seed for Random +150.869 ops/s +Iteration 1: 171.022 ops/s + +# Run progress: 89.39% complete, ETA 00:01:30 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301943826455828 as seed for Random +142.638 ops/s +Iteration 1: 170.312 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": + 170.667 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson + +# Run progress: 90.91% complete, ETA 00:01:17 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301957286623625 as seed for Random +6.395 ops/s +Iteration 1: 6.372 ops/s + +# Run progress: 92.42% complete, ETA 00:01:05 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=301979016774491 as seed for Random +6.316 ops/s +Iteration 1: 6.446 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": + 6.409 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry + +# Run progress: 93.94% complete, ETA 00:00:52 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302000875990129 as seed for Random +84.054 ops/s +Iteration 1: 88.700 ops/s + +# Run progress: 95.45% complete, ETA 00:00:39 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302014538075026 as seed for Random +86.096 ops/s +Iteration 1: 95.876 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": + 92.288 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 +# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java +# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java + +# Run progress: 96.97% complete, ETA 00:00:26 +# Fork: 1 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302028269412899 as seed for Random +129.326 ops/s +Iteration 1: 140.039 ops/s + +# Run progress: 98.48% complete, ETA 00:00:13 +# Fork: 2 of 2 +OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. +# Warmup Iteration 1: Using SEED=302041836953811 as seed for Random +132.312 ops/s +Iteration 1: 137.720 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": + 138.880 ops/s + + +# Run complete. Total time: 00:14:31 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 2 909.796 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 2 725.338 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 2 1211.758 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 2 879.461 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 2 286.244 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 2 34.818 ops/s +c.g.f.j.databind.Serialization.genson thrpt 2 465.310 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2 329.002 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 2 677.204 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 2 748.052 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 2 709.803 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 2 121.420 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 2 276.222 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 2 342.483 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 2 930.066 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 2 354.500 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2 272.193 ops/s +c.g.f.j.stream.Serialization.genson thrpt 2 463.230 ops/s +c.g.f.j.stream.Serialization.gson thrpt 2 162.848 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 2 872.831 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 2 797.142 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 2 136.553 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 2 94.080 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2 431.163 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 2 120.385 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 2 493.473 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 2 709.363 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 2 170.667 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 2 6.409 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 2 92.288 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 2 138.880 ops/s From 5f4aa479c859ede16c01f953cf63ec5e3c4f8eec Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sat, 22 Oct 2022 17:53:43 +0100 Subject: [PATCH 07/42] #53 commiting back results --- .github/workflows/gradle.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 6fb549e..cf45125 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -37,4 +37,5 @@ jobs: ./toMd.sh ../index.md - uses: stefanzweifel/git-auto-commit-action@v4 with: - commit_message: result adding back to repo \ No newline at end of file + commit_message: result adding back to repo + contents: write \ No newline at end of file From 2f95bf875f4420715f9a4219114e4eda841baaec Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sat, 22 Oct 2022 17:55:46 +0100 Subject: [PATCH 08/42] #53 commiting back results --- src/main/java/com/github/fabienrenaud/jjb/Cli.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/github/fabienrenaud/jjb/Cli.java b/src/main/java/com/github/fabienrenaud/jjb/Cli.java index 764adef..3fe9c42 100644 --- a/src/main/java/com/github/fabienrenaud/jjb/Cli.java +++ b/src/main/java/com/github/fabienrenaud/jjb/Cli.java @@ -48,7 +48,7 @@ public static abstract class AbstractCommand implements Runnable { * JMH options */ @Option(type = OptionType.GLOBAL, name = "-f", description = "JMH: forks. Defaults to 2.") - public int forks = 2; + public int forks = 1; @Option(type = OptionType.GLOBAL, name = "-wi", description = "JMH: warmup iterations. Defaults to 1.") public int warmupIterations = 1; @Option(type = OptionType.GLOBAL, name = "-i", description = "JMH: measurement iterations. Defaults to 1.") From 08d104ab47eb4a1adeabe2bcc1f58ad9dad5350a Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sat, 22 Oct 2022 22:33:02 +0100 Subject: [PATCH 09/42] #53 commiting back results --- .github/workflows/gradle.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index cf45125..e45901d 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -21,6 +21,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + with: + token: ${{ secrets.TOKEN_GIT }} - name: Set up JDK 17 uses: actions/setup-java@v3 with: From 913e0dc28692645545c5827e23db0b088dc10c6d Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sat, 22 Oct 2022 22:47:26 +0100 Subject: [PATCH 10/42] #53 commiting back results --- .github/workflows/gradle.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index e45901d..aee7a71 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -40,4 +40,5 @@ jobs: - uses: stefanzweifel/git-auto-commit-action@v4 with: commit_message: result adding back to repo - contents: write \ No newline at end of file + contents: write + #test \ No newline at end of file From e3ddcf521cc428c81cefbfa593ebc26dd6de288f Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sat, 22 Oct 2022 23:00:10 +0100 Subject: [PATCH 11/42] #53 commiting back results --- .github/workflows/gradle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index aee7a71..37c4181 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -41,4 +41,4 @@ jobs: with: commit_message: result adding back to repo contents: write - #test \ No newline at end of file + #test2 \ No newline at end of file From 624a92c8ec30b6639dc6d13007474109bd65d18d Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 23 Oct 2022 16:08:37 +0100 Subject: [PATCH 12/42] #53 commiting back results --- .github/workflows/gradle.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 37c4181..7cab560 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -41,4 +41,5 @@ jobs: with: commit_message: result adding back to repo contents: write + push_options: --force #test2 \ No newline at end of file From 899e5f7cedc288926585d271f3c4cfe1e44cb7e7 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 23 Oct 2022 18:44:45 +0000 Subject: [PATCH 13/42] result adding back to repo --- output/clients-deser-1-1.txt | 772 ++++++ output/clients-deser-1-10.txt | 1850 ++++++++++++++ output/clients-deser-1-100.txt | 1927 +++++++++++++++ output/clients-ser-1-1.txt | 1159 +++++++++ output/clients-ser-1-10.txt | 711 ++++++ output/clients-ser-1-100.txt | 711 ++++++ output/users-deser-1-1.txt | 3260 +++++-------------------- output/users-deser-1-10.txt | 4126 ++++---------------------------- output/users-deser-1-100.txt | 2469 +++++++++++++++++++ output/users-ser-1-1.txt | 3189 ++++-------------------- output/users-ser-1-10.txt | 2682 +++++---------------- output/users-ser-1-100.txt | 1482 +++++++++++- 12 files changed, 13059 insertions(+), 11279 deletions(-) create mode 100644 output/clients-deser-1-1.txt create mode 100644 output/clients-deser-1-10.txt create mode 100644 output/clients-deser-1-100.txt create mode 100644 output/clients-ser-1-1.txt create mode 100644 output/clients-ser-1-10.txt create mode 100644 output/clients-ser-1-100.txt create mode 100644 output/users-deser-1-100.txt diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt new file mode 100644 index 0000000..6f476a6 --- /dev/null +++ b/output/clients-deser-1-1.txt @@ -0,0 +1,772 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:03:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2714972710412 as seed for Random +109422.875 ops/s +Iteration 1: 195843.145 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": + 195843.145 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson + +# Run progress: 6.67% complete, ETA 00:03:01 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2727888271706 as seed for Random +72062.856 ops/s +Iteration 1: 139723.892 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": + 139723.892 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 13.33% complete, ETA 00:02:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2740848415790 as seed for Random +534407.503 ops/s +Iteration 1: 660058.735 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 660058.735 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 20.00% complete, ETA 00:02:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2753720208912 as seed for Random +331747.412 ops/s +Iteration 1: 403821.864 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 403821.864 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 26.67% complete, ETA 00:02:22 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2766548396439 as seed for Random +22328.650 ops/s +Iteration 1: 136185.287 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 136185.287 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 33.33% complete, ETA 00:02:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2779435282007 as seed for Random +16662.555 ops/s +Iteration 1: 22900.451 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 22900.451 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 40.00% complete, ETA 00:01:56 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2792309074022 as seed for Random +72256.801 ops/s +Iteration 1: 132890.742 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 132890.742 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 46.67% complete, ETA 00:01:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2805165673536 as seed for Random +87491.953 ops/s +Iteration 1: 146670.417 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 146670.417 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 53.33% complete, ETA 00:01:30 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2818066659029 as seed for Random +86103.734 ops/s +Iteration 1: 181487.397 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 181487.397 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 60.00% complete, ETA 00:01:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2830916273147 as seed for Random +184860.746 ops/s +Iteration 1: 342357.044 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 342357.044 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 66.67% complete, ETA 00:01:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2843783296794 as seed for Random +212252.598 ops/s +Iteration 1: 319158.494 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 319158.494 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 73.33% complete, ETA 00:00:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2856605361950 as seed for Random +67292.793 ops/s +Iteration 1: 135682.643 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 135682.643 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter + +# Run progress: 80.00% complete, ETA 00:00:38 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2869457632255 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7af8cd64 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare + +# Run progress: 86.67% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2871183599829 as seed for Random +58339.879 ops/s +Iteration 1: 159976.890 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": + 159976.890 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi + +# Run progress: 93.33% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2884107745335 as seed for Random +134273.954 ops/s +Iteration 1: 212958.757 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": + 212958.757 ops/s + + +# Run complete. Total time: 00:03:02 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +Deserialization.avajejsonb thrpt 195843.145 ops/s +Deserialization.avajejsonb_jackson thrpt 139723.892 ops/s +Deserialization.dsljson thrpt 660058.735 ops/s +Deserialization.dsljson_reflection thrpt 403821.864 ops/s +Deserialization.fastjson thrpt 136185.287 ops/s +Deserialization.flexjson thrpt 22900.451 ops/s +Deserialization.genson thrpt 132890.742 ops/s +Deserialization.gson thrpt 146670.417 ops/s +Deserialization.jackson thrpt 181487.397 ops/s +Deserialization.jackson_afterburner thrpt 342357.044 ops/s +Deserialization.jackson_blackbird thrpt 319158.494 ops/s +Deserialization.jodd thrpt 135682.643 ops/s +Deserialization.logansquare thrpt 159976.890 ops/s +Deserialization.moshi thrpt 212958.757 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt new file mode 100644 index 0000000..57f141e --- /dev/null +++ b/output/clients-deser-1-10.txt @@ -0,0 +1,1850 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:03:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3079989152475 as seed for Random +6991.744 ops/s +Iteration 1: 13422.108 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": + 13422.108 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson + +# Run progress: 6.67% complete, ETA 00:03:01 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3092909222074 as seed for Random +4803.638 ops/s +Iteration 1: 10885.728 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": + 10885.728 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 13.33% complete, ETA 00:02:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3105763382367 as seed for Random +47468.526 ops/s +Iteration 1: 68111.731 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 68111.731 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 20.00% complete, ETA 00:02:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3118682423215 as seed for Random +40353.334 ops/s +Iteration 1: 56860.639 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 56860.639 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 26.67% complete, ETA 00:02:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3131533888883 as seed for Random +4974.118 ops/s +Iteration 1: 8196.940 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 8196.940 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 33.33% complete, ETA 00:02:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3144409448886 as seed for Random +1668.522 ops/s +Iteration 1: 2816.778 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 2816.778 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 40.00% complete, ETA 00:01:56 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3157303270900 as seed for Random +6145.070 ops/s +Iteration 1: 12203.330 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 12203.330 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 46.67% complete, ETA 00:01:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3170192786787 as seed for Random +4689.621 ops/s +Iteration 1: 9467.249 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 9467.249 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 53.33% complete, ETA 00:01:30 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3183110184287 as seed for Random +4905.800 ops/s +Iteration 1: 7847.839 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 7847.839 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 60.00% complete, ETA 00:01:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3195963175468 as seed for Random +4598.851 ops/s +Iteration 1: 8532.895 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 8532.895 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 66.67% complete, ETA 00:01:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3208819262250 as seed for Random +4613.850 ops/s +Iteration 1: 9628.825 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 9628.825 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 73.33% complete, ETA 00:00:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3221669615395 as seed for Random +4328.310 ops/s +Iteration 1: 9333.617 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 9333.617 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter + +# Run progress: 80.00% complete, ETA 00:00:38 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3234500350193 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2e279923 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3dfb47dd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@13d7e506 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@38a14a8c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@703c16e1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@d787427 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@451e1469 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@59933ac0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@8bad477 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6d176fb8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5157adb with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7fcdd006 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2d03266a with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@509f2789 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare + +# Run progress: 86.67% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3236288894534 as seed for Random +2853.778 ops/s +Iteration 1: 7483.558 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": + 7483.558 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi + +# Run progress: 93.33% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3249227054325 as seed for Random +4777.871 ops/s +Iteration 1: 9088.661 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": + 9088.661 ops/s + + +# Run complete. Total time: 00:03:02 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +Deserialization.avajejsonb thrpt 13422.108 ops/s +Deserialization.avajejsonb_jackson thrpt 10885.728 ops/s +Deserialization.dsljson thrpt 68111.731 ops/s +Deserialization.dsljson_reflection thrpt 56860.639 ops/s +Deserialization.fastjson thrpt 8196.940 ops/s +Deserialization.flexjson thrpt 2816.778 ops/s +Deserialization.genson thrpt 12203.330 ops/s +Deserialization.gson thrpt 9467.249 ops/s +Deserialization.jackson thrpt 7847.839 ops/s +Deserialization.jackson_afterburner thrpt 8532.895 ops/s +Deserialization.jackson_blackbird thrpt 9628.825 ops/s +Deserialization.jodd thrpt 9333.617 ops/s +Deserialization.logansquare thrpt 7483.558 ops/s +Deserialization.moshi thrpt 9088.661 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt new file mode 100644 index 0000000..cb515aa --- /dev/null +++ b/output/clients-deser-1-100.txt @@ -0,0 +1,1927 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:03:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3446005558416 as seed for Random +739.480 ops/s +Iteration 1: 1354.504 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": + 1354.504 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson + +# Run progress: 6.67% complete, ETA 00:03:02 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3458975464609 as seed for Random +583.259 ops/s +Iteration 1: 1199.883 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": + 1199.883 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 13.33% complete, ETA 00:02:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3471928389464 as seed for Random +4592.338 ops/s +Iteration 1: 6879.712 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 6879.712 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 20.00% complete, ETA 00:02:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3484897651742 as seed for Random +3868.900 ops/s +Iteration 1: 5706.454 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 5706.454 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 26.67% complete, ETA 00:02:22 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3497804128591 as seed for Random +442.610 ops/s +Iteration 1: 757.924 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 757.924 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 33.33% complete, ETA 00:02:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3510730829122 as seed for Random +121.131 ops/s +Iteration 1: 240.152 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 240.152 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 40.00% complete, ETA 00:01:56 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3523814855091 as seed for Random +560.596 ops/s +Iteration 1: 1072.643 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 1072.643 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 46.67% complete, ETA 00:01:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3536695597184 as seed for Random +592.395 ops/s +Iteration 1: 1197.332 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 1197.332 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 53.33% complete, ETA 00:01:30 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3549679584195 as seed for Random +431.366 ops/s +Iteration 1: 739.095 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 739.095 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 60.00% complete, ETA 00:01:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3562609174584 as seed for Random +471.956 ops/s +Iteration 1: 936.015 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 936.015 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 66.67% complete, ETA 00:01:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3575528529739 as seed for Random +459.387 ops/s +Iteration 1: 941.747 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 941.747 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 73.33% complete, ETA 00:00:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3588432017982 as seed for Random +572.390 ops/s +Iteration 1: 1030.732 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 1030.732 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter + +# Run progress: 80.00% complete, ETA 00:00:38 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3601311387232 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3529a560 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 51 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@688d357a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@31b31439 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3f870c16 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6b1de88f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@66323378 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@69106e0e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@aec9aa4 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@234347ac with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1c6f7333 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1028b479 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@21ea2536 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7a0adc9b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@20606389 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@684828ba with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare + +# Run progress: 86.67% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3602221086233 as seed for Random +450.120 ops/s +Iteration 1: 906.462 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": + 906.462 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi + +# Run progress: 93.33% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3615218475597 as seed for Random +498.230 ops/s +Iteration 1: 778.545 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": + 778.545 ops/s + + +# Run complete. Total time: 00:03:02 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +Deserialization.avajejsonb thrpt 1354.504 ops/s +Deserialization.avajejsonb_jackson thrpt 1199.883 ops/s +Deserialization.dsljson thrpt 6879.712 ops/s +Deserialization.dsljson_reflection thrpt 5706.454 ops/s +Deserialization.fastjson thrpt 757.924 ops/s +Deserialization.flexjson thrpt 240.152 ops/s +Deserialization.genson thrpt 1072.643 ops/s +Deserialization.gson thrpt 1197.332 ops/s +Deserialization.jackson thrpt 739.095 ops/s +Deserialization.jackson_afterburner thrpt 936.015 ops/s +Deserialization.jackson_blackbird thrpt 941.747 ops/s +Deserialization.jodd thrpt 1030.732 ops/s +Deserialization.logansquare thrpt 906.462 ops/s +Deserialization.moshi thrpt 778.545 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt new file mode 100644 index 0000000..be7e712 --- /dev/null +++ b/output/clients-ser-1-1.txt @@ -0,0 +1,1159 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:03:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2532453980543 as seed for Random +435181.466 ops/s +Iteration 1: 575449.320 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": + 575449.320 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson + +# Run progress: 6.67% complete, ETA 00:03:01 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2545374256449 as seed for Random +378817.863 ops/s +Iteration 1: 512371.383 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": + 512371.383 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 13.33% complete, ETA 00:02:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2558279269905 as seed for Random +923432.758 ops/s +Iteration 1: 1038767.015 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 1038767.015 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 20.00% complete, ETA 00:02:34 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2571092043171 as seed for Random +699576.496 ops/s +Iteration 1: 742712.918 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 742712.918 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 26.67% complete, ETA 00:02:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2584011489934 as seed for Random +189140.665 ops/s +Iteration 1: 420176.879 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 420176.879 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 33.33% complete, ETA 00:02:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2596871782777 as seed for Random +3078.867 ops/s +Iteration 1: 1701.640 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 1701.640 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 40.00% complete, ETA 00:01:55 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2609720165280 as seed for Random +309068.996 ops/s +Iteration 1: 392699.794 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 392699.794 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 46.67% complete, ETA 00:01:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2622571920700 as seed for Random +113244.018 ops/s +Iteration 1: 168243.196 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 168243.196 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 53.33% complete, ETA 00:01:30 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2635415463641 as seed for Random +479718.677 ops/s +Iteration 1: 572042.682 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 572042.682 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 60.00% complete, ETA 00:01:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2648341364446 as seed for Random +245708.871 ops/s +Iteration 1: 346864.535 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 346864.535 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 66.67% complete, ETA 00:01:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2661195621484 as seed for Random +455264.710 ops/s +Iteration 1: 623072.492 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 623072.492 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 73.33% complete, ETA 00:00:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2674085053475 as seed for Random +37749.749 ops/s +Iteration 1: 54995.689 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 54995.689 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 80.00% complete, ETA 00:00:38 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2686956160781 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare + +# Run progress: 86.67% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2688712974053 as seed for Random +278301.354 ops/s +Iteration 1: 446843.772 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": + 446843.772 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi + +# Run progress: 93.33% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2701593330795 as seed for Random +224784.639 ops/s +Iteration 1: 331885.272 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": + 331885.272 ops/s + + +# Run complete. Total time: 00:03:02 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 575449.320 ops/s +Serialization.avajejsonb_jackson thrpt 512371.383 ops/s +Serialization.dsljson thrpt 1038767.015 ops/s +Serialization.dsljson_reflection thrpt 742712.918 ops/s +Serialization.fastjson thrpt 420176.879 ops/s +Serialization.flexjson thrpt 1701.640 ops/s +Serialization.genson thrpt 392699.794 ops/s +Serialization.gson thrpt 168243.196 ops/s +Serialization.jackson thrpt 572042.682 ops/s +Serialization.jackson_afterburner thrpt 346864.535 ops/s +Serialization.jackson_blackbird thrpt 623072.492 ops/s +Serialization.jodd thrpt 54995.689 ops/s +Serialization.logansquare thrpt 446843.772 ops/s +Serialization.moshi thrpt 331885.272 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt new file mode 100644 index 0000000..b52966a --- /dev/null +++ b/output/clients-ser-1-10.txt @@ -0,0 +1,711 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:03:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2897538653754 as seed for Random +38650.103 ops/s +Iteration 1: 46432.403 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": + 46432.403 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson + +# Run progress: 6.67% complete, ETA 00:03:01 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2910441780610 as seed for Random +32881.698 ops/s +Iteration 1: 43784.207 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": + 43784.207 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 13.33% complete, ETA 00:02:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2923324657924 as seed for Random +93867.878 ops/s +Iteration 1: 120751.050 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 120751.050 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 20.00% complete, ETA 00:02:34 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2936188928746 as seed for Random +83776.407 ops/s +Iteration 1: 91403.009 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 91403.009 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 26.67% complete, ETA 00:02:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2949002870453 as seed for Random +10365.912 ops/s +Iteration 1: 34936.903 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 34936.903 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 33.33% complete, ETA 00:02:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2961864424748 as seed for Random +652.095 ops/s +Iteration 1: 411.910 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 411.910 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 40.00% complete, ETA 00:01:55 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2974786338102 as seed for Random +26395.514 ops/s +Iteration 1: 37495.255 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 37495.255 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 46.67% complete, ETA 00:01:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2987692594847 as seed for Random +9873.703 ops/s +Iteration 1: 17637.586 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 17637.586 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 53.33% complete, ETA 00:01:30 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3000579420980 as seed for Random +23074.160 ops/s +Iteration 1: 32073.128 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 32073.128 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 60.00% complete, ETA 00:01:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3013484819941 as seed for Random +21933.819 ops/s +Iteration 1: 31775.776 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 31775.776 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 66.67% complete, ETA 00:01:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3026288871765 as seed for Random +24703.013 ops/s +Iteration 1: 32621.122 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 32621.122 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 73.33% complete, ETA 00:00:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3039123590066 as seed for Random +3596.730 ops/s +Iteration 1: 5957.832 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 5957.832 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 80.00% complete, ETA 00:00:38 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3051959019454 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare + +# Run progress: 86.67% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3053662024864 as seed for Random +19235.144 ops/s +Iteration 1: 39558.512 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": + 39558.512 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi + +# Run progress: 93.33% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3066549449150 as seed for Random +12979.071 ops/s +Iteration 1: 24700.474 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": + 24700.474 ops/s + + +# Run complete. Total time: 00:03:01 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 46432.403 ops/s +Serialization.avajejsonb_jackson thrpt 43784.207 ops/s +Serialization.dsljson thrpt 120751.050 ops/s +Serialization.dsljson_reflection thrpt 91403.009 ops/s +Serialization.fastjson thrpt 34936.903 ops/s +Serialization.flexjson thrpt 411.910 ops/s +Serialization.genson thrpt 37495.255 ops/s +Serialization.gson thrpt 17637.586 ops/s +Serialization.jackson thrpt 32073.128 ops/s +Serialization.jackson_afterburner thrpt 31775.776 ops/s +Serialization.jackson_blackbird thrpt 32621.122 ops/s +Serialization.jodd thrpt 5957.832 ops/s +Serialization.logansquare thrpt 39558.512 ops/s +Serialization.moshi thrpt 24700.474 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt new file mode 100644 index 0000000..6b4873a --- /dev/null +++ b/output/clients-ser-1-100.txt @@ -0,0 +1,711 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:03:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3262778521233 as seed for Random +3713.713 ops/s +Iteration 1: 4512.200 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": + 4512.200 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson + +# Run progress: 6.67% complete, ETA 00:03:02 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3275737631058 as seed for Random +3057.865 ops/s +Iteration 1: 4121.493 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": + 4121.493 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 13.33% complete, ETA 00:02:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3288598502307 as seed for Random +9672.091 ops/s +Iteration 1: 12468.054 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 12468.054 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 20.00% complete, ETA 00:02:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3301463877517 as seed for Random +8369.016 ops/s +Iteration 1: 9125.196 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 9125.196 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 26.67% complete, ETA 00:02:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3314335551091 as seed for Random +864.478 ops/s +Iteration 1: 2011.982 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 2011.982 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 33.33% complete, ETA 00:02:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3327302660351 as seed for Random +178.676 ops/s +Iteration 1: 153.756 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 153.756 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 40.00% complete, ETA 00:01:56 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3340527034083 as seed for Random +2679.251 ops/s +Iteration 1: 3331.764 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 3331.764 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 46.67% complete, ETA 00:01:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3353415495096 as seed for Random +1301.509 ops/s +Iteration 1: 1708.542 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 1708.542 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 53.33% complete, ETA 00:01:30 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3366263482109 as seed for Random +2380.993 ops/s +Iteration 1: 3180.545 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 3180.545 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 60.00% complete, ETA 00:01:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3379250431985 as seed for Random +2413.814 ops/s +Iteration 1: 3177.630 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 3177.630 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 66.67% complete, ETA 00:01:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3392159020802 as seed for Random +2367.284 ops/s +Iteration 1: 3149.410 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 3149.410 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 73.33% complete, ETA 00:00:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3405043431126 as seed for Random +431.013 ops/s +Iteration 1: 600.065 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 600.065 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 80.00% complete, ETA 00:00:38 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3417916893137 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare + +# Run progress: 86.67% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3419675886256 as seed for Random +2078.091 ops/s +Iteration 1: 3591.638 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": + 3591.638 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi + +# Run progress: 93.33% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3432532060250 as seed for Random +1925.565 ops/s +Iteration 1: 2587.851 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": + 2587.851 ops/s + + +# Run complete. Total time: 00:03:02 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 4512.200 ops/s +Serialization.avajejsonb_jackson thrpt 4121.493 ops/s +Serialization.dsljson thrpt 12468.054 ops/s +Serialization.dsljson_reflection thrpt 9125.196 ops/s +Serialization.fastjson thrpt 2011.982 ops/s +Serialization.flexjson thrpt 153.756 ops/s +Serialization.genson thrpt 3331.764 ops/s +Serialization.gson thrpt 1708.542 ops/s +Serialization.jackson thrpt 3180.545 ops/s +Serialization.jackson_afterburner thrpt 3177.630 ops/s +Serialization.jackson_blackbird thrpt 3149.410 ops/s +Serialization.jodd thrpt 600.065 ops/s +Serialization.logansquare thrpt 3591.638 ops/s +Serialization.moshi thrpt 2587.851 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt index 10884af..aba8c68 100644 --- a/output/users-deser-1-1.txt +++ b/output/users-deser-1-1.txt @@ -1,7 +1,7 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -10,29 +10,21 @@ # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb -# Run progress: 0.00% complete, ETA 00:13:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296109868913853 as seed for Random -588718.023 ops/s -Iteration 1: 620662.263 ops/s - -# Run progress: 1.52% complete, ETA 00:14:16 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296123089291359 as seed for Random -555338.570 ops/s -Iteration 1: 629262.903 ops/s +# Run progress: 0.00% complete, ETA 00:06:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=529466149513 as seed for Random +456980.068 ops/s +Iteration 1: 660468.064 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 624962.583 ops/s + 660468.064 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -41,29 +33,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:14:03 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296136209776888 as seed for Random -385112.225 ops/s -Iteration 1: 470708.115 ops/s - -# Run progress: 4.55% complete, ETA 00:13:49 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296149451911470 as seed for Random -385480.186 ops/s -Iteration 1: 463129.239 ops/s +# Run progress: 3.03% complete, ETA 00:06:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=542277426150 as seed for Random +299985.898 ops/s +Iteration 1: 416275.867 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 466918.677 ops/s + 416275.867 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -72,228 +56,11 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:13:37 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296162627172167 as seed for Random +# Run progress: 6.06% complete, ETA 00:06:37 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=555068513567 as seed for Random -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) @@ -332,12 +99,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -389,14 +154,6 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) - - -# Run progress: 7.58% complete, ETA 00:10:55 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296163637198385 as seed for Random - - java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) @@ -454,31 +211,6 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) @@ -573,2042 +305,342 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - - - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 9.09% complete, ETA 00:09:07 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296164606200578 as seed for Random -752935.151 ops/s -Iteration 1: 804178.234 ops/s - -# Run progress: 10.61% complete, ETA 00:09:32 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296177798971113 as seed for Random -756526.641 ops/s -Iteration 1: 835843.546 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 820010.890 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:09:47 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296190994615489 as seed for Random -564999.979 ops/s -Iteration 1: 540533.759 ops/s - -# Run progress: 13.64% complete, ETA 00:09:57 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296204224032237 as seed for Random -571184.411 ops/s -Iteration 1: 626136.437 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 583335.098 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 15.15% complete, ETA 00:10:02 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296217472797589 as seed for Random -235539.724 ops/s -Iteration 1: 308012.733 ops/s - -# Run progress: 16.67% complete, ETA 00:10:03 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296230744337987 as seed for Random -196580.741 ops/s -Iteration 1: 286369.529 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 297191.131 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 18.18% complete, ETA 00:10:03 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296243987729707 as seed for Random -65021.991 ops/s -Iteration 1: 81288.510 ops/s - -# Run progress: 19.70% complete, ETA 00:10:00 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296257221454701 as seed for Random -64242.250 ops/s -Iteration 1: 80191.502 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 80740.006 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 21.21% complete, ETA 00:09:56 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296270478930784 as seed for Random -312289.605 ops/s -Iteration 1: 358080.906 ops/s - -# Run progress: 22.73% complete, ETA 00:09:50 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296283739471209 as seed for Random -347697.774 ops/s -Iteration 1: 349047.535 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 353564.220 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 24.24% complete, ETA 00:09:44 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296296986224131 as seed for Random -330736.615 ops/s -Iteration 1: 337246.267 ops/s - -# Run progress: 25.76% complete, ETA 00:09:37 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296310307906232 as seed for Random -309014.722 ops/s -Iteration 1: 350004.905 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 343625.586 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 27.27% complete, ETA 00:09:29 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296323582474277 as seed for Random -397493.804 ops/s -Iteration 1: 462863.321 ops/s - -# Run progress: 28.79% complete, ETA 00:09:21 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296336766990500 as seed for Random -265710.853 ops/s -Iteration 1: 449133.860 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 455998.590 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:09:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296349962167138 as seed for Random -456974.784 ops/s -Iteration 1: 483931.469 ops/s - -# Run progress: 31.82% complete, ETA 00:09:02 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296363197810817 as seed for Random -405268.338 ops/s -Iteration 1: 503986.687 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 493959.078 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:08:52 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296376419005978 as seed for Random -372025.871 ops/s -Iteration 1: 455466.367 ops/s - -# Run progress: 34.85% complete, ETA 00:08:43 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296389803787154 as seed for Random -426259.366 ops/s -Iteration 1: 481441.020 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 468453.693 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 36.36% complete, ETA 00:08:32 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296402951368763 as seed for Random -248595.740 ops/s -Iteration 1: 267466.537 ops/s - -# Run progress: 37.88% complete, ETA 00:08:22 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296416206126419 as seed for Random -310574.347 ops/s -Iteration 1: 350704.913 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 309085.725 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon - -# Run progress: 39.39% complete, ETA 00:08:11 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296429383388705 as seed for Random -157961.020 ops/s -Iteration 1: 181106.970 ops/s - -# Run progress: 40.91% complete, ETA 00:08:00 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296442590811209 as seed for Random -139996.324 ops/s -Iteration 1: 161715.011 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 171410.990 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:07:49 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296455814994828 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3c0a949d with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@23f6c56f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@411fbfec with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2864bf87 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@67688e25 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53962312 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7cdacd4c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1b83619b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@68bf029d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@10027465 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3e232bf with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3f5c7f79 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6dc3561b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4c5e93bc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@326a3857 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2844e68b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 9.09% complete, ETA 00:04:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=555756458424 as seed for Random +365121.104 ops/s +Iteration 1: 651105.616 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 651105.616 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:04:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=568557027901 as seed for Random +410319.272 ops/s +Iteration 1: 440155.368 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 440155.368 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 15.15% complete, ETA 00:04:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=581405114043 as seed for Random +99489.040 ops/s +Iteration 1: 156192.991 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 156192.991 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 18.18% complete, ETA 00:04:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=594242305752 as seed for Random +17605.232 ops/s +Iteration 1: 34034.055 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 34034.055 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 21.21% complete, ETA 00:04:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=607029216157 as seed for Random +225886.585 ops/s +Iteration 1: 276125.845 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 276125.845 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 24.24% complete, ETA 00:04:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=619883331078 as seed for Random +231432.243 ops/s +Iteration 1: 283978.443 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 283978.443 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 27.27% complete, ETA 00:04:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=632704760326 as seed for Random +253316.055 ops/s +Iteration 1: 387098.081 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 387098.081 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:04:27 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=645490272521 as seed for Random +382280.571 ops/s +Iteration 1: 497640.950 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 497640.950 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:04:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=658269598266 as seed for Random +336036.336 ops/s +Iteration 1: 451705.250 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 451705.250 ops/s +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 36.36% complete, ETA 00:04:07 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=671079183201 as seed for Random +234525.532 ops/s +Iteration 1: 320236.396 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 320236.396 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon + +# Run progress: 39.39% complete, ETA 00:03:57 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=683862521157 as seed for Random +48549.050 ops/s +Iteration 1: 61890.718 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": + 61890.718 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 43.94% complete, ETA 00:07:22 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296456966797693 as seed for Random +# Run progress: 42.42% complete, ETA 00:03:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=696705562135 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2cb551 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1a600c45 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -2695,7 +727,7 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) @@ -2712,7 +744,7 @@ Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protect at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@11dc453b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1b8d605b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -2807,7 +839,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7053167d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@610d1aac with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -2902,7 +934,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7b557ad with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e43aae1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -2997,7 +1029,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e1dd0c7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2c82bc8f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3092,7 +1124,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@c6f107d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@192d89ac with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3187,7 +1219,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@284543df with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@40ff5b37 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3282,7 +1314,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5d1db49f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4fd154e7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3377,7 +1409,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@49520ad1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3472,7 +1504,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@dea91d5 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@54158471 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3567,7 +1599,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@c10fa41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@86f4dd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3662,7 +1694,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2884bb83 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@29328021 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3736,8 +1768,7 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -3756,9 +1787,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at javassist.ClassPool.makeClass(ClassPool.java:814) at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more + ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@757f5b44 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3c47aba4 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3853,7 +1884,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3136c26a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@193daf47 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -3927,7 +1958,8 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -3946,9 +1978,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at javassist.ClassPool.makeClass(ClassPool.java:814) at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more + ... 49 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7fa07fc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@442cc559 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -4043,7 +2075,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7ddb61b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3794ed4b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -4142,9 +2174,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4153,29 +2185,21 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:06:57 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296458063282968 as seed for Random -353685.373 ops/s -Iteration 1: 396478.394 ops/s - -# Run progress: 46.97% complete, ETA 00:06:47 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296471226765559 as seed for Random -380682.378 ops/s -Iteration 1: 402877.148 ops/s +# Run progress: 45.45% complete, ETA 00:03:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=697487323981 as seed for Random +288435.569 ops/s +Iteration 1: 349745.029 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 399677.771 ops/s + 349745.029 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4184,29 +2208,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:06:37 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296484365612746 as seed for Random -182006.868 ops/s -Iteration 1: 206480.025 ops/s - -# Run progress: 50.00% complete, ETA 00:06:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296497475801684 as seed for Random -240088.955 ops/s -Iteration 1: 254382.638 ops/s +# Run progress: 48.48% complete, ETA 00:03:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=710304517585 as seed for Random +156410.561 ops/s +Iteration 1: 238909.007 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 230431.332 ops/s + 238909.007 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4215,29 +2231,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:06:17 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296510795123676 as seed for Random -320468.062 ops/s -Iteration 1: 365757.648 ops/s - -# Run progress: 53.03% complete, ETA 00:06:06 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296523979782302 as seed for Random -330283.871 ops/s -Iteration 1: 370650.875 ops/s +# Run progress: 51.52% complete, ETA 00:03:02 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=723099165920 as seed for Random +214243.682 ops/s +Iteration 1: 274137.986 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 368204.261 ops/s + 274137.986 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4246,29 +2254,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:05:56 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296537247977063 as seed for Random -74468.523 ops/s -Iteration 1: 87760.526 ops/s - -# Run progress: 56.06% complete, ETA 00:05:45 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296550423521400 as seed for Random -68405.512 ops/s -Iteration 1: 82953.397 ops/s +# Run progress: 54.55% complete, ETA 00:02:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=735895079284 as seed for Random +29788.726 ops/s +Iteration 1: 61505.567 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 85356.962 ops/s + 61505.567 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4277,29 +2277,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:05:34 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296563653620015 as seed for Random -397759.073 ops/s -Iteration 1: 399767.095 ops/s - -# Run progress: 59.09% complete, ETA 00:05:23 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296576886108245 as seed for Random -409201.080 ops/s -Iteration 1: 444874.703 ops/s +# Run progress: 57.58% complete, ETA 00:02:41 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=748678434701 as seed for Random +163547.015 ops/s +Iteration 1: 302500.758 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 422320.899 ops/s + 302500.758 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4308,29 +2300,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:05:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296590167640807 as seed for Random -305334.455 ops/s -Iteration 1: 398327.869 ops/s - -# Run progress: 62.12% complete, ETA 00:05:00 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296603418889703 as seed for Random -339747.940 ops/s -Iteration 1: 428478.359 ops/s +# Run progress: 60.61% complete, ETA 00:02:30 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=761517834799 as seed for Random +209307.206 ops/s +Iteration 1: 282174.718 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 413403.114 ops/s + 282174.718 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4339,29 +2323,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:04:49 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296616658941740 as seed for Random -411065.178 ops/s -Iteration 1: 462167.960 ops/s - -# Run progress: 65.15% complete, ETA 00:04:38 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296629780729913 as seed for Random -423118.018 ops/s -Iteration 1: 470899.036 ops/s +# Run progress: 63.64% complete, ETA 00:02:19 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=774331529265 as seed for Random +424651.559 ops/s +Iteration 1: 484429.580 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 466533.498 ops/s + 484429.580 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4370,29 +2346,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:04:26 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296643056234466 as seed for Random -33620.590 ops/s -Iteration 1: 37919.305 ops/s - -# Run progress: 68.18% complete, ETA 00:04:14 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296656110729826 as seed for Random -36585.500 ops/s -Iteration 1: 42757.787 ops/s +# Run progress: 66.67% complete, ETA 00:02:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=787261721357 as seed for Random +33737.623 ops/s +Iteration 1: 40810.573 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 40338.546 ops/s + 40810.573 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4401,29 +2369,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:04:03 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296669198478034 as seed for Random -85941.048 ops/s -Iteration 1: 99726.518 ops/s - -# Run progress: 71.21% complete, ETA 00:03:51 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296682344812365 as seed for Random -85611.048 ops/s -Iteration 1: 98878.800 ops/s +# Run progress: 69.70% complete, ETA 00:01:57 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=799986261914 as seed for Random +26098.720 ops/s +Iteration 1: 38920.954 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 99302.659 ops/s + 38920.954 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4432,29 +2392,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:03:39 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296695589407812 as seed for Random -120357.442 ops/s -Iteration 1: 132067.947 ops/s - -# Run progress: 74.24% complete, ETA 00:03:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296708825244510 as seed for Random -116880.172 ops/s -Iteration 1: 138910.264 ops/s +# Run progress: 72.73% complete, ETA 00:01:46 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=812810571059 as seed for Random +71656.231 ops/s +Iteration 1: 91538.299 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 135489.105 ops/s + 91538.299 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4463,29 +2415,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:03:15 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296722078182046 as seed for Random -282321.336 ops/s -Iteration 1: 307405.345 ops/s - -# Run progress: 77.27% complete, ETA 00:03:03 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296735362963804 as seed for Random -273891.029 ops/s -Iteration 1: 311564.602 ops/s +# Run progress: 75.76% complete, ETA 00:01:34 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=825627252309 as seed for Random +70544.797 ops/s +Iteration 1: 185217.917 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 309484.974 ops/s + 185217.917 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4494,29 +2438,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:02:51 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296748567183527 as seed for Random -105675.640 ops/s -Iteration 1: 110581.151 ops/s - -# Run progress: 80.30% complete, ETA 00:02:39 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296761758336940 as seed for Random -109356.749 ops/s -Iteration 1: 112180.077 ops/s +# Run progress: 78.79% complete, ETA 00:01:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=838442793153 as seed for Random +37265.160 ops/s +Iteration 1: 54237.818 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 111380.614 ops/s + 54237.818 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4525,29 +2461,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:02:27 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296774975518064 as seed for Random -310028.988 ops/s -Iteration 1: 338195.468 ops/s - -# Run progress: 83.33% complete, ETA 00:02:15 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296788245413265 as seed for Random -287496.704 ops/s -Iteration 1: 343203.728 ops/s +# Run progress: 81.82% complete, ETA 00:01:11 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=851233354720 as seed for Random +101451.723 ops/s +Iteration 1: 180799.069 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 340699.598 ops/s + 180799.069 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4556,29 +2484,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:02:03 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296801495781542 as seed for Random -130871.347 ops/s -Iteration 1: 139769.565 ops/s - -# Run progress: 86.36% complete, ETA 00:01:51 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296814818710699 as seed for Random -132422.109 ops/s -Iteration 1: 139053.508 ops/s +# Run progress: 84.85% complete, ETA 00:00:59 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=864022117705 as seed for Random +84848.844 ops/s +Iteration 1: 110077.648 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 139411.537 ops/s + 110077.648 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4587,29 +2507,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:01:39 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296828343350889 as seed for Random -104577.087 ops/s -Iteration 1: 109829.882 ops/s - -# Run progress: 89.39% complete, ETA 00:01:26 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296841643156362 as seed for Random -105393.038 ops/s -Iteration 1: 111081.786 ops/s +# Run progress: 87.88% complete, ETA 00:00:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=876791631819 as seed for Random +42838.535 ops/s +Iteration 1: 55365.432 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 110455.834 ops/s + 55365.432 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4618,29 +2530,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:01:14 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296854967065701 as seed for Random -69003.268 ops/s -Iteration 1: 77041.678 ops/s - -# Run progress: 92.42% complete, ETA 00:01:02 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296868292892084 as seed for Random -69269.239 ops/s -Iteration 1: 81730.736 ops/s +# Run progress: 90.91% complete, ETA 00:00:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=889584440574 as seed for Random +50094.192 ops/s +Iteration 1: 69529.216 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 79386.207 ops/s + 69529.216 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4649,29 +2553,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:49 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296881550280935 as seed for Random -327147.755 ops/s -Iteration 1: 371048.647 ops/s - -# Run progress: 95.45% complete, ETA 00:00:37 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296894742002756 as seed for Random -370961.069 ops/s -Iteration 1: 391137.882 ops/s +# Run progress: 93.94% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=902443664978 as seed for Random +203398.724 ops/s +Iteration 1: 341360.452 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 381093.265 ops/s + 341360.452 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4680,26 +2576,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:24 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296907974547470 as seed for Random -304832.139 ops/s -Iteration 1: 357740.787 ops/s - -# Run progress: 98.48% complete, ETA 00:00:12 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296921148738357 as seed for Random -304189.459 ops/s -Iteration 1: 360765.451 ops/s +# Run progress: 96.97% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=915220623696 as seed for Random +167317.108 ops/s +Iteration 1: 270320.855 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 359253.119 ops/s + 270320.855 ops/s -# Run complete. Total time: 00:13:44 +# Run complete. Total time: 00:06:38 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -4708,34 +2596,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 2 624962.583 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 2 466918.677 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 2 820010.890 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 2 583335.098 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 2 297191.131 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 2 80740.006 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 2 353564.220 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 2 343625.586 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 2 455998.590 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 2 493959.078 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 2 468453.693 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 2 309085.725 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 2 171410.990 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 2 399677.771 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 2 230431.332 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 2 368204.261 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 2 85356.962 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 2 422320.899 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 2 413403.114 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 2 466533.498 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2 40338.546 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 2 99302.659 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 2 135489.105 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2 309484.974 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 2 111380.614 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 2 340699.598 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 2 139411.537 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 2 110455.834 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 2 79386.207 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 2 381093.265 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 2 359253.119 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 660468.064 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 416275.867 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 651105.616 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 440155.368 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 156192.991 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 34034.055 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 276125.845 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 283978.443 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 387098.081 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 497640.950 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 451705.250 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 320236.396 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 61890.718 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 349745.029 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 238909.007 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 274137.986 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 61505.567 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 302500.758 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 282174.718 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 484429.580 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 40810.573 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 38920.954 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 91538.299 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 185217.917 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 54237.818 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 180799.069 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 110077.648 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 55365.432 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 69529.216 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 341360.452 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 270320.855 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt index b0f6bdd..3bbf7bd 100644 --- a/output/users-deser-1-10.txt +++ b/output/users-deser-1-10.txt @@ -1,7 +1,7 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -10,29 +10,21 @@ # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb -# Run progress: 0.00% complete, ETA 00:13:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300331112579632 as seed for Random -42457.020 ops/s -Iteration 1: 52226.177 ops/s - -# Run progress: 1.52% complete, ETA 00:14:57 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300344728992410 as seed for Random -44948.713 ops/s -Iteration 1: 55784.601 ops/s +# Run progress: 0.00% complete, ETA 00:06:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1328463372355 as seed for Random +54163.151 ops/s +Iteration 1: 71823.206 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 54005.389 ops/s + 71823.206 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -41,29 +33,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:14:38 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300358365605889 as seed for Random -30735.643 ops/s -Iteration 1: 38913.647 ops/s - -# Run progress: 4.55% complete, ETA 00:14:22 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300371945137531 as seed for Random -32451.146 ops/s -Iteration 1: 34937.054 ops/s +# Run progress: 3.03% complete, ETA 00:06:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1341255856641 as seed for Random +36892.268 ops/s +Iteration 1: 47272.837 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 36925.350 ops/s + 47272.837 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -72,10 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:14:09 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300385866432016 as seed for Random +# Run progress: 6.06% complete, ETA 00:06:38 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1354128507327 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax @@ -102,8 +85,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -117,7 +99,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -135,12 +117,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -185,7 +161,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -237,7 +214,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -255,6 +232,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -391,423 +374,80 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme -# Run progress: 7.58% complete, ETA 00:11:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300387232260814 as seed for Random - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Run progress: 9.09% complete, ETA 00:04:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1354823092292 as seed for Random +64970.075 ops/s +Iteration 1: 82255.557 ops/s -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 82255.557 ops/s -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Run progress: 12.12% complete, ETA 00:04:44 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1367677319141 as seed for Random +56286.354 ops/s +Iteration 1: 64748.714 ops/s -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 64748.714 ops/s -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - - - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 9.09% complete, ETA 00:09:37 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300388700766439 as seed for Random -60084.243 ops/s -Iteration 1: 64672.521 ops/s - -# Run progress: 10.61% complete, ETA 00:10:02 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300402403335205 as seed for Random -62524.893 ops/s -Iteration 1: 73532.806 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 69102.664 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:10:17 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300415951561072 as seed for Random -43006.973 ops/s -Iteration 1: 47552.436 ops/s - -# Run progress: 13.64% complete, ETA 00:10:24 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300429687368172 as seed for Random -50466.302 ops/s -Iteration 1: 49597.355 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 48574.896 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 15.15% complete, ETA 00:10:29 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300443384464798 as seed for Random -25545.576 ops/s -Iteration 1: 36810.259 ops/s - -# Run progress: 16.67% complete, ETA 00:10:30 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300457250140297 as seed for Random -27222.486 ops/s -Iteration 1: 38684.767 ops/s +# Run progress: 15.15% complete, ETA 00:04:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1380488354969 as seed for Random +22899.535 ops/s +Iteration 1: 38071.710 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 37747.513 ops/s + 38071.710 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -816,29 +456,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:10:29 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300470842758905 as seed for Random -5172.068 ops/s -Iteration 1: 6540.194 ops/s - -# Run progress: 19.70% complete, ETA 00:10:26 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300484529243410 as seed for Random -5232.045 ops/s -Iteration 1: 7228.035 ops/s +# Run progress: 18.18% complete, ETA 00:04:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1393352729341 as seed for Random +1901.213 ops/s +Iteration 1: 3991.155 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 6884.114 ops/s + 3991.155 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -847,29 +479,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:10:21 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300498326589508 as seed for Random -28439.992 ops/s -Iteration 1: 29593.050 ops/s - -# Run progress: 22.73% complete, ETA 00:10:15 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300512232819984 as seed for Random -26192.457 ops/s -Iteration 1: 29134.760 ops/s +# Run progress: 21.21% complete, ETA 00:04:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1406152457495 as seed for Random +27325.579 ops/s +Iteration 1: 36630.888 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 29363.905 ops/s + 36630.888 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -878,29 +502,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:10:09 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300525807705473 as seed for Random -27239.622 ops/s -Iteration 1: 29619.750 ops/s - -# Run progress: 25.76% complete, ETA 00:10:01 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300539566060962 as seed for Random -30551.877 ops/s -Iteration 1: 30223.483 ops/s +# Run progress: 24.24% complete, ETA 00:04:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1418956477703 as seed for Random +30491.607 ops/s +Iteration 1: 38921.953 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 29921.616 ops/s + 38921.953 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -909,29 +525,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:09:52 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300553071357323 as seed for Random -31674.181 ops/s -Iteration 1: 37081.362 ops/s - -# Run progress: 28.79% complete, ETA 00:09:43 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300566783808651 as seed for Random -32907.268 ops/s -Iteration 1: 38341.806 ops/s +# Run progress: 27.27% complete, ETA 00:04:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1431789775436 as seed for Random +33410.853 ops/s +Iteration 1: 45743.099 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 37711.584 ops/s + 45743.099 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -940,29 +548,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:09:33 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300580329470987 as seed for Random -37084.523 ops/s -Iteration 1: 42570.674 ops/s - -# Run progress: 31.82% complete, ETA 00:09:23 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300593987966609 as seed for Random -37495.609 ops/s -Iteration 1: 43543.678 ops/s +# Run progress: 30.30% complete, ETA 00:04:27 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1444620605844 as seed for Random +43919.147 ops/s +Iteration 1: 53269.533 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 43057.176 ops/s + 53269.533 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -971,29 +571,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:09:13 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300607661159994 as seed for Random -36901.754 ops/s -Iteration 1: 40987.486 ops/s - -# Run progress: 34.85% complete, ETA 00:09:02 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300621412582235 as seed for Random -35661.922 ops/s -Iteration 1: 40831.585 ops/s +# Run progress: 33.33% complete, ETA 00:04:18 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1457433937544 as seed for Random +39301.408 ops/s +Iteration 1: 50317.039 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 40909.535 ops/s + 50317.039 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1002,29 +594,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:08:52 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300635290912938 as seed for Random -27368.699 ops/s -Iteration 1: 32166.416 ops/s - -# Run progress: 37.88% complete, ETA 00:08:41 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300648890284833 as seed for Random -28278.929 ops/s -Iteration 1: 28956.618 ops/s +# Run progress: 36.36% complete, ETA 00:04:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1470212731110 as seed for Random +24789.110 ops/s +Iteration 1: 33877.564 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 30561.517 ops/s + 33877.564 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1033,29 +617,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:08:30 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300662561430923 as seed for Random -9600.733 ops/s -Iteration 1: 13041.498 ops/s - -# Run progress: 40.91% complete, ETA 00:08:18 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300676335056306 as seed for Random -11900.664 ops/s -Iteration 1: 14341.195 ops/s +# Run progress: 39.39% complete, ETA 00:03:57 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1483020991905 as seed for Random +5684.386 ops/s +Iteration 1: 9033.656 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 13691.347 ops/s + 9033.656 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1064,13 +640,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:08:07 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300690266289475 as seed for Random +# Run progress: 42.42% complete, ETA 00:03:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1495862912524 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@199865d9 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1510126f with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1157,7 +732,7 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) @@ -1174,76 +749,8 @@ Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protect at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@79751f3e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1261,84 +768,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7043a3a8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1356,84 +788,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@10dd1d72 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1451,84 +808,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@45491b01 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1546,84 +828,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2a4d34ab with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1641,1908 +848,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4a36da9e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@68bf029d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7734bf2f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@38271c51 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53cb2b62 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6eb2e3c2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@67688e25 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@107ddc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@17423a3d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3d6cf97f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - - - -# Run progress: 43.94% complete, ETA 00:07:40 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300691826730870 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@60f4a236 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@37f17700 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5cbb4c8b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@38ad383 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@15e3d35f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1589b23c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2d060e9e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6f2b3bf2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7fa07fc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1d1019a7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -3560,84 +868,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@49f7c2f9 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -3655,84 +888,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@ffcddb2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -3750,84 +908,49 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@10ab4f7b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -3845,84 +968,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@371814a2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -3940,84 +988,30 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5d1db49f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -4035,84 +1029,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2c28c99b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -4130,21 +1049,14 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4153,29 +1065,21 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:07:15 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300693624713268 as seed for Random -32987.635 ops/s -Iteration 1: 37447.703 ops/s - -# Run progress: 46.97% complete, ETA 00:07:04 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300707306204898 as seed for Random -32976.914 ops/s -Iteration 1: 36072.661 ops/s +# Run progress: 45.45% complete, ETA 00:03:22 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1497543773719 as seed for Random +42295.296 ops/s +Iteration 1: 51943.015 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 36760.182 ops/s + 51943.015 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4184,29 +1088,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:06:54 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300721048909154 as seed for Random -30698.497 ops/s -Iteration 1: 36278.784 ops/s - -# Run progress: 50.00% complete, ETA 00:06:43 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300734697340024 as seed for Random -30154.898 ops/s -Iteration 1: 39850.449 ops/s +# Run progress: 48.48% complete, ETA 00:03:13 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1510360465241 as seed for Random +20247.097 ops/s +Iteration 1: 42203.548 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 38064.617 ops/s + 42203.548 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4215,29 +1111,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:06:32 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300748116546999 as seed for Random -25403.058 ops/s -Iteration 1: 27092.737 ops/s - -# Run progress: 53.03% complete, ETA 00:06:21 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300761870021041 as seed for Random -23933.548 ops/s -Iteration 1: 26844.725 ops/s +# Run progress: 51.52% complete, ETA 00:03:03 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1523191161390 as seed for Random +24735.183 ops/s +Iteration 1: 33532.802 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 26968.731 ops/s + 33532.802 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4246,29 +1134,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:06:10 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300775592726884 as seed for Random -5392.033 ops/s -Iteration 1: 6784.655 ops/s - -# Run progress: 56.06% complete, ETA 00:05:59 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300789345008592 as seed for Random -5613.561 ops/s -Iteration 1: 7037.251 ops/s +# Run progress: 54.55% complete, ETA 00:02:53 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1536006196334 as seed for Random +3678.339 ops/s +Iteration 1: 6932.237 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 6910.953 ops/s + 6932.237 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4277,29 +1157,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:05:47 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300803037364650 as seed for Random -30180.738 ops/s -Iteration 1: 48103.354 ops/s - -# Run progress: 59.09% complete, ETA 00:05:36 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300816371296030 as seed for Random -30321.892 ops/s -Iteration 1: 43587.628 ops/s +# Run progress: 57.58% complete, ETA 00:02:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1548804523380 as seed for Random +15211.062 ops/s +Iteration 1: 39793.951 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 45845.491 ops/s + 39793.951 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4308,29 +1180,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:05:24 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300829787912554 as seed for Random -32420.774 ops/s -Iteration 1: 44512.133 ops/s - -# Run progress: 62.12% complete, ETA 00:05:12 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300843194855315 as seed for Random -25268.627 ops/s -Iteration 1: 36213.083 ops/s +# Run progress: 60.61% complete, ETA 00:02:31 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1561578744992 as seed for Random +21274.986 ops/s +Iteration 1: 23769.677 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 40362.608 ops/s + 23769.677 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4339,29 +1203,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:05:00 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300856905818926 as seed for Random -27194.103 ops/s -Iteration 1: 38782.284 ops/s - -# Run progress: 65.15% complete, ETA 00:04:48 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300870755509460 as seed for Random -33351.796 ops/s -Iteration 1: 41480.553 ops/s +# Run progress: 63.64% complete, ETA 00:02:20 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1574463954596 as seed for Random +36757.520 ops/s +Iteration 1: 52748.215 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 40131.419 ops/s + 52748.215 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4370,29 +1226,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:04:36 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300884391019719 as seed for Random -11564.083 ops/s -Iteration 1: 14824.521 ops/s - -# Run progress: 68.18% complete, ETA 00:04:24 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300897919267637 as seed for Random -11152.323 ops/s -Iteration 1: 14504.652 ops/s +# Run progress: 66.67% complete, ETA 00:02:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1587299316523 as seed for Random +10434.216 ops/s +Iteration 1: 19705.785 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 14664.587 ops/s + 19705.785 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4401,29 +1249,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:04:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300911601686430 as seed for Random -7370.805 ops/s -Iteration 1: 9027.003 ops/s - -# Run progress: 71.21% complete, ETA 00:04:00 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300925321139288 as seed for Random -5275.198 ops/s -Iteration 1: 7753.869 ops/s +# Run progress: 69.70% complete, ETA 00:01:58 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1600111550996 as seed for Random +3438.779 ops/s +Iteration 1: 5167.924 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 8390.436 ops/s + 5167.924 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4432,29 +1272,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:03:48 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300939248314054 as seed for Random -8065.487 ops/s -Iteration 1: 11258.930 ops/s - -# Run progress: 74.24% complete, ETA 00:03:35 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300953178044705 as seed for Random -6687.161 ops/s -Iteration 1: 8949.144 ops/s +# Run progress: 72.73% complete, ETA 00:01:46 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1612988082198 as seed for Random +7368.299 ops/s +Iteration 1: 12384.790 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 10104.037 ops/s + 12384.790 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4463,29 +1295,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:03:23 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300967764571580 as seed for Random -17319.344 ops/s -Iteration 1: 28553.292 ops/s - -# Run progress: 77.27% complete, ETA 00:03:11 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300981366334784 as seed for Random -24512.266 ops/s -Iteration 1: 28756.699 ops/s +# Run progress: 75.76% complete, ETA 00:01:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1625888700528 as seed for Random +3756.126 ops/s +Iteration 1: 23972.648 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 28654.995 ops/s + 23972.648 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4494,29 +1318,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:02:58 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300994822657755 as seed for Random -8486.907 ops/s -Iteration 1: 10297.827 ops/s - -# Run progress: 80.30% complete, ETA 00:02:46 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301008199136887 as seed for Random -8292.747 ops/s -Iteration 1: 9976.304 ops/s +# Run progress: 78.79% complete, ETA 00:01:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1638738060438 as seed for Random +4318.770 ops/s +Iteration 1: 5992.799 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 10137.066 ops/s + 5992.799 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4525,29 +1341,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:02:33 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301021904647934 as seed for Random -24545.251 ops/s -Iteration 1: 28947.077 ops/s - -# Run progress: 83.33% complete, ETA 00:02:20 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301035362923383 as seed for Random -25297.003 ops/s -Iteration 1: 30162.134 ops/s +# Run progress: 81.82% complete, ETA 00:01:11 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1651590661465 as seed for Random +5688.829 ops/s +Iteration 1: 15010.127 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 29554.606 ops/s + 15010.127 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4556,29 +1364,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:02:08 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301048766228279 as seed for Random -21557.353 ops/s -Iteration 1: 25894.404 ops/s - -# Run progress: 86.36% complete, ETA 00:01:55 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301062195699294 as seed for Random -21996.800 ops/s -Iteration 1: 24311.132 ops/s +# Run progress: 84.85% complete, ETA 00:01:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1664430577130 as seed for Random +18377.745 ops/s +Iteration 1: 24597.438 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 25102.768 ops/s + 24597.438 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4587,29 +1387,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:01:42 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301075667502684 as seed for Random -10409.222 ops/s -Iteration 1: 10888.479 ops/s - -# Run progress: 89.39% complete, ETA 00:01:29 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301089184160476 as seed for Random -10956.696 ops/s -Iteration 1: 11631.514 ops/s +# Run progress: 87.88% complete, ETA 00:00:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1677259765491 as seed for Random +4788.341 ops/s +Iteration 1: 5955.610 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 11259.996 ops/s + 5955.610 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4618,29 +1410,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:01:17 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301102584918265 as seed for Random -4706.343 ops/s -Iteration 1: 6184.546 ops/s - -# Run progress: 92.42% complete, ETA 00:01:04 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301116027051499 as seed for Random -6142.404 ops/s -Iteration 1: 7359.049 ops/s +# Run progress: 90.91% complete, ETA 00:00:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1690111499655 as seed for Random +6108.869 ops/s +Iteration 1: 8463.218 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 6771.798 ops/s + 8463.218 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4649,29 +1433,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:51 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301129372718897 as seed for Random -36128.131 ops/s -Iteration 1: 34161.854 ops/s - -# Run progress: 95.45% complete, ETA 00:00:38 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301142744255008 as seed for Random -37328.259 ops/s -Iteration 1: 39022.275 ops/s +# Run progress: 93.94% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1702914717987 as seed for Random +17088.210 ops/s +Iteration 1: 36929.338 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 36592.065 ops/s + 36929.338 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4680,26 +1456,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:25 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301156345609115 as seed for Random -25464.197 ops/s -Iteration 1: 30631.210 ops/s - -# Run progress: 98.48% complete, ETA 00:00:12 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301169731424602 as seed for Random -26166.958 ops/s -Iteration 1: 31516.291 ops/s +# Run progress: 96.97% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1715694259904 as seed for Random +21154.742 ops/s +Iteration 1: 33322.034 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 31073.751 ops/s + 33322.034 ops/s -# Run complete. Total time: 00:14:12 +# Run complete. Total time: 00:06:40 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -4708,34 +1476,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 2 54005.389 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 2 36925.350 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 2 69102.664 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 2 48574.896 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 2 37747.513 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 2 6884.114 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 2 29363.905 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 2 29921.616 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 2 37711.584 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 2 43057.176 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 2 40909.535 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 2 30561.517 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 2 13691.347 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 2 36760.182 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 2 38064.617 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 2 26968.731 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 2 6910.953 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 2 45845.491 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 2 40362.608 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 2 40131.419 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2 14664.587 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 2 8390.436 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 2 10104.037 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2 28654.995 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 2 10137.066 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 2 29554.606 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 2 25102.768 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 2 11259.996 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 2 6771.798 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 2 36592.065 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 2 31073.751 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 71823.206 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 47272.837 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 82255.557 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 64748.714 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 38071.710 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 3991.155 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 36630.888 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 38921.953 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 45743.099 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 53269.533 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 50317.039 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 33877.564 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 9033.656 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 51943.015 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 42203.548 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 33532.802 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 6932.237 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 39793.951 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 23769.677 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 52748.215 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 19705.785 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 5167.924 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 12384.790 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 23972.648 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 5992.799 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 15010.127 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 24597.438 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 5955.610 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 8463.218 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 36929.338 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 33322.034 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt new file mode 100644 index 0000000..5b703b8 --- /dev/null +++ b/output/users-deser-1-100.txt @@ -0,0 +1,2469 @@ +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:06:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2130825574121 as seed for Random +5217.675 ops/s +Iteration 1: 6885.986 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": + 6885.986 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson + +# Run progress: 3.03% complete, ETA 00:06:54 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2143730260877 as seed for Random +3308.741 ops/s +Iteration 1: 4741.767 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": + 4741.767 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon + +# Run progress: 6.06% complete, ETA 00:06:39 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2156539557102 as seed for Random + + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 9.09% complete, ETA 00:04:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2157237267590 as seed for Random +5344.386 ops/s +Iteration 1: 7735.780 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 7735.780 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:04:44 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2170064852510 as seed for Random +5505.855 ops/s +Iteration 1: 6199.881 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 6199.881 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 15.15% complete, ETA 00:04:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2182873765613 as seed for Random +2696.472 ops/s +Iteration 1: 4043.911 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 4043.911 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 18.18% complete, ETA 00:04:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2195744675513 as seed for Random +171.226 ops/s +Iteration 1: 323.395 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 323.395 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 21.21% complete, ETA 00:04:49 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2208624660514 as seed for Random +2563.051 ops/s +Iteration 1: 3507.681 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 3507.681 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 24.24% complete, ETA 00:04:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2221502044444 as seed for Random +2953.670 ops/s +Iteration 1: 3982.792 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 3982.792 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 27.27% complete, ETA 00:04:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2234367851448 as seed for Random +3536.892 ops/s +Iteration 1: 5017.949 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 5017.949 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:04:27 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2247274367869 as seed for Random +4551.599 ops/s +Iteration 1: 5944.345 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 5944.345 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:04:18 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2260068025368 as seed for Random +4111.938 ops/s +Iteration 1: 5218.377 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 5218.377 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 36.36% complete, ETA 00:04:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2272881195820 as seed for Random +2351.361 ops/s +Iteration 1: 2962.479 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 2962.479 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon + +# Run progress: 39.39% complete, ETA 00:03:58 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2285701320513 as seed for Random +577.853 ops/s +Iteration 1: 855.571 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": + 855.571 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:03:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2298536018959 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4bbf5993 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@12247744 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4506bb70 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6015ba with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@42e5d77b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@694657f3 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6f282b61 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@59c4a4a3 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@13a29962 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@32590a6f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 49 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6ad2d490 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4d552bfd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5d1c0b2 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart + +# Run progress: 45.45% complete, ETA 00:03:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2300251232223 as seed for Random +4304.884 ops/s +Iteration 1: 5226.007 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": + 5226.007 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare + +# Run progress: 48.48% complete, ETA 00:03:13 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2313083848644 as seed for Random +4200.565 ops/s +Iteration 1: 5274.994 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": + 5274.994 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi + +# Run progress: 51.52% complete, ETA 00:03:03 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2325980745527 as seed for Random +2246.782 ops/s +Iteration 1: 3292.478 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": + 3292.478 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson + +# Run progress: 54.55% complete, ETA 00:02:53 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2338893104945 as seed for Random +319.682 ops/s +Iteration 1: 678.835 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": + 678.835 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson + +# Run progress: 57.58% complete, ETA 00:02:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2351746377230 as seed for Random +1600.337 ops/s +Iteration 1: 3606.728 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": + 3606.728 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson + +# Run progress: 60.61% complete, ETA 00:02:31 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2364581264000 as seed for Random +1165.101 ops/s +Iteration 1: 1556.113 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": + 1556.113 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson + +# Run progress: 63.64% complete, ETA 00:02:20 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2377494512158 as seed for Random +2042.924 ops/s +Iteration 1: 5455.188 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": + 5455.188 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson + +# Run progress: 66.67% complete, ETA 00:02:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2390383232613 as seed for Random +1458.917 ops/s +Iteration 1: 2846.353 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": + 2846.353 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio + +# Run progress: 69.70% complete, ETA 00:01:58 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2403270800422 as seed for Random +325.243 ops/s +Iteration 1: 547.221 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": + 547.221 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple + +# Run progress: 72.73% complete, ETA 00:01:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2416114117953 as seed for Random +486.562 ops/s +Iteration 1: 1266.272 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": + 1266.272 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson + +# Run progress: 75.76% complete, ETA 00:01:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2428974568555 as seed for Random +1967.470 ops/s +Iteration 1: 2871.256 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": + 2871.256 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson + +# Run progress: 78.79% complete, ETA 00:01:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2441872334592 as seed for Random +413.405 ops/s +Iteration 1: 595.442 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": + 595.442 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi + +# Run progress: 81.82% complete, ETA 00:01:11 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2454704032085 as seed for Random +1795.570 ops/s +Iteration 1: 3263.802 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": + 3263.802 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson + +# Run progress: 84.85% complete, ETA 00:01:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2467546799197 as seed for Random +2291.325 ops/s +Iteration 1: 3084.233 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": + 3084.233 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson + +# Run progress: 87.88% complete, ETA 00:00:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2480401264929 as seed for Random +490.258 ops/s +Iteration 1: 592.950 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": + 592.950 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson + +# Run progress: 90.91% complete, ETA 00:00:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2493360784534 as seed for Random +384.509 ops/s +Iteration 1: 765.180 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": + 765.180 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry + +# Run progress: 93.94% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2506188657576 as seed for Random +2154.562 ops/s +Iteration 1: 4166.077 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": + 4166.077 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java + +# Run progress: 96.97% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2519072397210 as seed for Random +1562.737 ops/s +Iteration 1: 3566.781 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": + 3566.781 ops/s + + +# Run complete. Total time: 00:06:41 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Deserialization.avajejsonb thrpt 6885.986 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4741.767 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 7735.780 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 6199.881 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 4043.911 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 323.395 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 3507.681 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 3982.792 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 5017.949 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 5944.345 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 5218.377 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 2962.479 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 855.571 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 5226.007 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 5274.994 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 3292.478 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 678.835 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 3606.728 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 1556.113 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 5455.188 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2846.353 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 547.221 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 1266.272 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2871.256 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 595.442 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 3263.802 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 3084.233 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 592.950 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 765.180 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 4166.077 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 3566.781 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt index 8536861..0cc48f9 100644 --- a/output/users-ser-1-1.txt +++ b/output/users-ser-1-1.txt @@ -1,7 +1,7 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -10,29 +10,21 @@ # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb -# Run progress: 0.00% complete, ETA 00:13:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295287294176376 as seed for Random -1034900.489 ops/s -Iteration 1: 968466.294 ops/s - -# Run progress: 1.52% complete, ETA 00:14:19 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295300572749081 as seed for Random -954779.547 ops/s -Iteration 1: 821383.507 ops/s +# Run progress: 0.00% complete, ETA 00:06:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=129098425243 as seed for Random +771425.115 ops/s +Iteration 1: 848648.412 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 894924.900 ops/s + 848648.412 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -41,29 +33,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:14:10 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295314051667691 as seed for Random -638826.631 ops/s -Iteration 1: 668161.248 ops/s - -# Run progress: 4.55% complete, ETA 00:14:01 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295327592521594 as seed for Random -812502.283 ops/s -Iteration 1: 878192.665 ops/s +# Run progress: 3.03% complete, ETA 00:06:53 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=142005402492 as seed for Random +481298.964 ops/s +Iteration 1: 650036.894 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 773176.956 ops/s + 650036.894 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -72,10 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:13:50 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295340740335313 as seed for Random +# Run progress: 6.06% complete, ETA 00:06:39 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=154848420544 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -98,76 +81,6 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) @@ -274,7 +187,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -288,13 +202,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -308,13 +219,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -328,13 +236,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -348,13 +253,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -368,13 +270,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -408,21 +307,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) - - -# Run progress: 7.58% complete, ETA 00:11:05 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295341745081463 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -465,13 +353,10 @@ Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B at org.boon.core.Sys.(Sys.java:182) ... 19 more -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -485,305 +370,36 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - - - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 9.09% complete, ETA 00:09:15 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295342704369908 as seed for Random -1115095.450 ops/s -Iteration 1: 1153687.134 ops/s - -# Run progress: 10.61% complete, ETA 00:09:38 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295355759376150 as seed for Random -1124418.467 ops/s -Iteration 1: 1166619.359 ops/s +# Run progress: 9.09% complete, ETA 00:04:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=155536755867 as seed for Random +711256.071 ops/s +Iteration 1: 813867.165 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 1160153.247 ops/s + 813867.165 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -792,29 +408,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:09:51 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295368792988016 as seed for Random -852149.762 ops/s -Iteration 1: 928562.739 ops/s - -# Run progress: 13.64% complete, ETA 00:09:59 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295381863154422 as seed for Random -916338.388 ops/s -Iteration 1: 891456.253 ops/s +# Run progress: 12.12% complete, ETA 00:04:44 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=168306642340 as seed for Random +743324.649 ops/s +Iteration 1: 778099.847 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 910009.496 ops/s + 778099.847 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -823,29 +431,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:10:03 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295395077542404 as seed for Random -734709.343 ops/s -Iteration 1: 829711.927 ops/s - -# Run progress: 16.67% complete, ETA 00:10:05 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295408298996898 as seed for Random -787019.420 ops/s -Iteration 1: 865996.798 ops/s +# Run progress: 15.15% complete, ETA 00:04:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=181128724882 as seed for Random +436966.264 ops/s +Iteration 1: 672737.135 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 847854.362 ops/s + 672737.135 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -854,29 +454,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:10:04 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295421565943165 as seed for Random -2845.776 ops/s -Iteration 1: 1717.681 ops/s - -# Run progress: 19.70% complete, ETA 00:10:01 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295434674413455 as seed for Random -2234.105 ops/s -Iteration 1: 1168.221 ops/s +# Run progress: 18.18% complete, ETA 00:04:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=193914420204 as seed for Random +2840.169 ops/s +Iteration 1: 1558.265 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1442.951 ops/s + 1558.265 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -885,29 +477,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:09:56 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295447749260973 as seed for Random -485388.425 ops/s -Iteration 1: 536953.788 ops/s - -# Run progress: 22.73% complete, ETA 00:09:50 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295460938772938 as seed for Random -476144.484 ops/s -Iteration 1: 526335.289 ops/s +# Run progress: 21.21% complete, ETA 00:04:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=206721467110 as seed for Random +357440.211 ops/s +Iteration 1: 440335.618 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 531644.539 ops/s + 440335.618 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -916,29 +500,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:09:44 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295474084180957 as seed for Random -350034.287 ops/s -Iteration 1: 384281.323 ops/s - -# Run progress: 25.76% complete, ETA 00:09:36 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295487223409288 as seed for Random -296062.124 ops/s -Iteration 1: 319232.539 ops/s +# Run progress: 24.24% complete, ETA 00:04:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=219569099103 as seed for Random +156760.056 ops/s +Iteration 1: 217065.546 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 351756.931 ops/s + 217065.546 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -947,29 +523,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:09:28 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295500370829748 as seed for Random -762861.694 ops/s -Iteration 1: 789392.897 ops/s - -# Run progress: 28.79% complete, ETA 00:09:19 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295513535431072 as seed for Random -807467.634 ops/s -Iteration 1: 850198.846 ops/s +# Run progress: 27.27% complete, ETA 00:04:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=232424274981 as seed for Random +516134.056 ops/s +Iteration 1: 604343.381 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 819795.872 ops/s + 604343.381 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -978,29 +546,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:09:10 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295526700536970 as seed for Random -751303.058 ops/s -Iteration 1: 809051.348 ops/s - -# Run progress: 31.82% complete, ETA 00:09:01 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295539837594288 as seed for Random -784182.079 ops/s -Iteration 1: 825448.754 ops/s +# Run progress: 30.30% complete, ETA 00:04:27 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=245194158883 as seed for Random +524093.185 ops/s +Iteration 1: 587617.423 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 817250.051 ops/s + 587617.423 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1009,29 +569,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:08:51 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295552998279909 as seed for Random -776088.365 ops/s -Iteration 1: 823540.535 ops/s - -# Run progress: 34.85% complete, ETA 00:08:41 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295566304690964 as seed for Random -743827.128 ops/s -Iteration 1: 751009.947 ops/s +# Run progress: 33.33% complete, ETA 00:04:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=257954698088 as seed for Random +545536.074 ops/s +Iteration 1: 632059.579 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 787275.241 ops/s + 632059.579 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1040,29 +592,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:08:31 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295579440020935 as seed for Random -126436.668 ops/s -Iteration 1: 134901.051 ops/s - -# Run progress: 37.88% complete, ETA 00:08:20 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295592587800964 as seed for Random -127793.965 ops/s -Iteration 1: 135013.868 ops/s +# Run progress: 36.36% complete, ETA 00:04:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=270847020501 as seed for Random +41075.669 ops/s +Iteration 1: 54265.216 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 134957.460 ops/s + 54265.216 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1071,29 +615,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:08:10 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295605694245643 as seed for Random -352475.768 ops/s -Iteration 1: 398933.713 ops/s - -# Run progress: 40.91% complete, ETA 00:07:59 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295618795440263 as seed for Random -318304.331 ops/s -Iteration 1: 346113.994 ops/s +# Run progress: 39.39% complete, ETA 00:03:57 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=283656884100 as seed for Random +143515.414 ops/s +Iteration 1: 240660.833 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 372523.854 ops/s + 240660.833 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1102,13 +638,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:07:47 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295631965965384 as seed for Random +# Run progress: 42.42% complete, ETA 00:03:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=296495840473 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -1163,7 +698,7 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) @@ -1180,45 +715,8 @@ Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protect at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1235,53 +733,28 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1298,1269 +771,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - - - -# Run progress: 43.94% complete, ETA 00:07:21 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295633011150972 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -2577,53 +790,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -2640,53 +809,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -2703,53 +828,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -2764,55 +845,11 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -2829,53 +866,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -2892,53 +885,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -2955,53 +904,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -3018,53 +923,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -3081,53 +942,28 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -3144,21 +980,34 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3167,29 +1016,21 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:06:56 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295634068278022 as seed for Random -347943.392 ops/s -Iteration 1: 342330.227 ops/s - -# Run progress: 46.97% complete, ETA 00:06:46 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295647217589923 as seed for Random -307003.432 ops/s -Iteration 1: 306468.845 ops/s +# Run progress: 45.45% complete, ETA 00:03:22 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=298166706260 as seed for Random +312938.305 ops/s +Iteration 1: 352910.777 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 324399.536 ops/s + 352910.777 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3198,29 +1039,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:06:36 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295660302745586 as seed for Random -847869.909 ops/s -Iteration 1: 952095.775 ops/s - -# Run progress: 50.00% complete, ETA 00:06:26 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295673428682869 as seed for Random -790985.571 ops/s -Iteration 1: 809920.331 ops/s +# Run progress: 48.48% complete, ETA 00:03:13 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=310941879017 as seed for Random +398367.641 ops/s +Iteration 1: 554933.211 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 881008.053 ops/s + 554933.211 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3229,29 +1062,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:06:15 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295686640617857 as seed for Random -338215.912 ops/s -Iteration 1: 306932.502 ops/s - -# Run progress: 53.03% complete, ETA 00:06:05 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295699809715134 as seed for Random -342428.764 ops/s -Iteration 1: 336850.426 ops/s +# Run progress: 51.52% complete, ETA 00:03:03 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=323765495417 as seed for Random +258216.914 ops/s +Iteration 1: 322624.103 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 321891.464 ops/s + 322624.103 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3260,29 +1085,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:05:54 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295713075196957 as seed for Random -270691.376 ops/s -Iteration 1: 324112.191 ops/s - -# Run progress: 56.06% complete, ETA 00:05:44 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295726280024148 as seed for Random -242899.505 ops/s -Iteration 1: 270853.451 ops/s +# Run progress: 54.55% complete, ETA 00:02:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=336609862139 as seed for Random +123217.538 ops/s +Iteration 1: 204110.071 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 297482.821 ops/s + 204110.071 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3291,29 +1108,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:05:33 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295739496540518 as seed for Random -407639.692 ops/s -Iteration 1: 429507.332 ops/s - -# Run progress: 59.09% complete, ETA 00:05:22 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295752652677261 as seed for Random -399180.818 ops/s -Iteration 1: 428071.127 ops/s +# Run progress: 57.58% complete, ETA 00:02:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=349392809160 as seed for Random +281408.084 ops/s +Iteration 1: 353771.585 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 428789.230 ops/s + 353771.585 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3322,29 +1131,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:05:11 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295765867481804 as seed for Random -236607.869 ops/s -Iteration 1: 250949.539 ops/s - -# Run progress: 62.12% complete, ETA 00:04:59 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295779008500573 as seed for Random -229726.337 ops/s -Iteration 1: 233150.091 ops/s +# Run progress: 60.61% complete, ETA 00:02:31 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=362181598397 as seed for Random +146244.048 ops/s +Iteration 1: 173365.040 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 242049.815 ops/s + 173365.040 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3353,29 +1154,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:04:48 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295792181310507 as seed for Random -867246.756 ops/s -Iteration 1: 880072.228 ops/s - -# Run progress: 65.15% complete, ETA 00:04:37 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295805374190390 as seed for Random -874262.963 ops/s -Iteration 1: 927945.058 ops/s +# Run progress: 63.64% complete, ETA 00:02:20 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=375002170783 as seed for Random +451638.034 ops/s +Iteration 1: 593522.282 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 904008.643 ops/s + 593522.282 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3384,29 +1177,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:04:25 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295818534115408 as seed for Random -626022.578 ops/s -Iteration 1: 711584.706 ops/s - -# Run progress: 68.18% complete, ETA 00:04:14 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295831734170382 as seed for Random -647333.523 ops/s -Iteration 1: 663686.844 ops/s +# Run progress: 66.67% complete, ETA 00:02:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=387851093646 as seed for Random +363393.824 ops/s +Iteration 1: 480183.139 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 687635.775 ops/s + 480183.139 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3415,29 +1200,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:04:02 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295844949256182 as seed for Random -97794.659 ops/s -Iteration 1: 114125.454 ops/s - -# Run progress: 71.21% complete, ETA 00:03:50 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295858075326494 as seed for Random -100478.797 ops/s -Iteration 1: 98414.979 ops/s +# Run progress: 69.70% complete, ETA 00:01:58 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=400715231430 as seed for Random +31382.651 ops/s +Iteration 1: 43291.955 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 106270.217 ops/s + 43291.955 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3446,29 +1223,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:03:39 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295871160695004 as seed for Random -149343.298 ops/s -Iteration 1: 163071.375 ops/s - -# Run progress: 74.24% complete, ETA 00:03:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295884361931409 as seed for Random -98865.395 ops/s -Iteration 1: 101103.115 ops/s +# Run progress: 72.73% complete, ETA 00:01:46 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=413593766971 as seed for Random +44509.749 ops/s +Iteration 1: 49561.701 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 132087.245 ops/s + 49561.701 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3477,29 +1246,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:03:15 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295897513194553 as seed for Random -415305.594 ops/s -Iteration 1: 454216.307 ops/s - -# Run progress: 77.27% complete, ETA 00:03:03 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295910705811838 as seed for Random -416592.690 ops/s -Iteration 1: 446175.504 ops/s +# Run progress: 75.76% complete, ETA 00:01:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=426431332058 as seed for Random +136882.738 ops/s +Iteration 1: 240069.743 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 450195.906 ops/s + 240069.743 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3508,29 +1269,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:02:51 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295923937622234 as seed for Random -128894.048 ops/s -Iteration 1: 144909.385 ops/s - -# Run progress: 80.30% complete, ETA 00:02:39 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295937080397378 as seed for Random -133755.608 ops/s -Iteration 1: 151008.019 ops/s +# Run progress: 78.79% complete, ETA 00:01:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=439208401680 as seed for Random +73024.600 ops/s +Iteration 1: 133764.231 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 147958.702 ops/s + 133764.231 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3539,29 +1292,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:02:27 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295950247269827 as seed for Random -381188.771 ops/s -Iteration 1: 412149.020 ops/s - -# Run progress: 83.33% complete, ETA 00:02:15 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295963424445805 as seed for Random -366801.077 ops/s -Iteration 1: 369725.764 ops/s +# Run progress: 81.82% complete, ETA 00:01:11 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=451958021534 as seed for Random +281766.368 ops/s +Iteration 1: 367547.627 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 390937.392 ops/s + 367547.627 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3570,29 +1315,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:02:03 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295976770590715 as seed for Random -530465.557 ops/s -Iteration 1: 643485.697 ops/s - -# Run progress: 86.36% complete, ETA 00:01:50 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=295990184244443 as seed for Random -573909.149 ops/s -Iteration 1: 679475.373 ops/s +# Run progress: 84.85% complete, ETA 00:00:59 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=464764866060 as seed for Random +348084.849 ops/s +Iteration 1: 409423.406 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 661480.535 ops/s + 409423.406 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3601,29 +1338,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:01:38 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296003429644136 as seed for Random -110769.416 ops/s -Iteration 1: 134191.014 ops/s - -# Run progress: 89.39% complete, ETA 00:01:26 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296016836430357 as seed for Random -132986.219 ops/s -Iteration 1: 152915.691 ops/s +# Run progress: 87.88% complete, ETA 00:00:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=477557741971 as seed for Random +38266.900 ops/s +Iteration 1: 77144.147 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 143553.352 ops/s + 77144.147 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3632,29 +1361,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:01:14 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296030021075207 as seed for Random -72427.270 ops/s -Iteration 1: 83963.537 ops/s - -# Run progress: 92.42% complete, ETA 00:01:01 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296043182203580 as seed for Random -69466.722 ops/s -Iteration 1: 79770.771 ops/s +# Run progress: 90.91% complete, ETA 00:00:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=490400144649 as seed for Random +90770.183 ops/s +Iteration 1: 124200.581 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 81867.154 ops/s + 124200.581 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3663,29 +1384,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:49 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296056376616071 as seed for Random -83723.700 ops/s -Iteration 1: 94414.630 ops/s - -# Run progress: 95.45% complete, ETA 00:00:37 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296069529551569 as seed for Random -97053.309 ops/s -Iteration 1: 105417.359 ops/s +# Run progress: 93.94% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=503206444554 as seed for Random +18773.928 ops/s +Iteration 1: 44156.238 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 99915.994 ops/s + 44156.238 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3694,26 +1407,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:24 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296082732971918 as seed for Random -154552.999 ops/s -Iteration 1: 174829.042 ops/s - -# Run progress: 98.48% complete, ETA 00:00:12 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=296095902900873 as seed for Random -135185.322 ops/s -Iteration 1: 153253.069 ops/s +# Run progress: 96.97% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=516071436100 as seed for Random +106907.355 ops/s +Iteration 1: 175002.025 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 164041.055 ops/s + 175002.025 ops/s -# Run complete. Total time: 00:13:41 +# Run complete. Total time: 00:06:39 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -3721,35 +1426,35 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 2 894924.900 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 2 773176.956 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 2 1160153.247 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 2 910009.496 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 2 847854.362 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 2 1442.951 ops/s -c.g.f.j.databind.Serialization.genson thrpt 2 531644.539 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2 351756.931 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 2 819795.872 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 2 817250.051 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 2 787275.241 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 2 134957.460 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 2 372523.854 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 2 324399.536 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 2 881008.053 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 2 321891.464 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2 297482.821 ops/s -c.g.f.j.stream.Serialization.genson thrpt 2 428789.230 ops/s -c.g.f.j.stream.Serialization.gson thrpt 2 242049.815 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 2 904008.643 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 2 687635.775 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 2 106270.217 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 2 132087.245 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2 450195.906 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 2 147958.702 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 2 390937.392 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 2 661480.535 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 2 143553.352 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 2 81867.154 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 2 99915.994 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 2 164041.055 ops/s +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 848648.412 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 650036.894 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 813867.165 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 778099.847 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 672737.135 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 1558.265 ops/s +c.g.f.j.databind.Serialization.genson thrpt 440335.618 ops/s +c.g.f.j.databind.Serialization.gson thrpt 217065.546 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 604343.381 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 587617.423 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 632059.579 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 54265.216 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 240660.833 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 352910.777 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 554933.211 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 322624.103 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 204110.071 ops/s +c.g.f.j.stream.Serialization.genson thrpt 353771.585 ops/s +c.g.f.j.stream.Serialization.gson thrpt 173365.040 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 593522.282 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 480183.139 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 43291.955 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 49561.701 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 240069.743 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 133764.231 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 367547.627 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 409423.406 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 77144.147 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 124200.581 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 44156.238 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 175002.025 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt index c431309..a2fbcea 100644 --- a/output/users-ser-1-10.txt +++ b/output/users-ser-1-10.txt @@ -1,7 +1,7 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -10,29 +10,21 @@ # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb -# Run progress: 0.00% complete, ETA 00:13:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299487476182758 as seed for Random -139288.436 ops/s -Iteration 1: 116164.639 ops/s - -# Run progress: 1.52% complete, ETA 00:14:01 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299500603315154 as seed for Random -114601.188 ops/s -Iteration 1: 112898.066 ops/s +# Run progress: 0.00% complete, ETA 00:06:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=928615665800 as seed for Random +75372.433 ops/s +Iteration 1: 82938.252 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 114531.353 ops/s + 82938.252 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -41,29 +33,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:13:54 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299513769231977 as seed for Random -87867.027 ops/s -Iteration 1: 90234.510 ops/s - -# Run progress: 4.55% complete, ETA 00:13:45 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299527031546388 as seed for Random -93555.512 ops/s -Iteration 1: 89599.726 ops/s +# Run progress: 3.03% complete, ETA 00:06:50 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=941388314581 as seed for Random +61576.702 ops/s +Iteration 1: 72072.501 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 89917.118 ops/s + 72072.501 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -72,73 +56,11 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:13:34 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299540404759116 as seed for Random +# Run progress: 6.06% complete, ETA 00:06:38 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=954298453562 as seed for Random -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) @@ -294,155 +216,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - - - -# Run progress: 7.58% complete, ETA 00:10:56 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299541508435046 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -516,35 +291,6 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) @@ -613,1499 +359,25 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - - - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 9.09% complete, ETA 00:09:09 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299542585239721 as seed for Random -112893.372 ops/s -Iteration 1: 103308.346 ops/s - -# Run progress: 10.61% complete, ETA 00:09:34 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299556218369998 as seed for Random -107591.612 ops/s -Iteration 1: 125709.078 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 114508.712 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:09:52 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299569584345545 as seed for Random -88240.952 ops/s -Iteration 1: 98064.031 ops/s - -# Run progress: 13.64% complete, ETA 00:10:02 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299582804833954 as seed for Random -95570.133 ops/s -Iteration 1: 80490.840 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 89277.436 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 15.15% complete, ETA 00:10:06 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299596258871700 as seed for Random -50370.879 ops/s -Iteration 1: 54807.839 ops/s - -# Run progress: 16.67% complete, ETA 00:10:09 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299609707868069 as seed for Random -47934.207 ops/s -Iteration 1: 52644.947 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 53726.393 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 18.18% complete, ETA 00:10:08 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299623291381425 as seed for Random -603.755 ops/s -Iteration 1: 286.090 ops/s - -# Run progress: 19.70% complete, ETA 00:10:07 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299636867242000 as seed for Random -577.643 ops/s -Iteration 1: 305.666 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 295.878 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 21.21% complete, ETA 00:10:03 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299650369195926 as seed for Random -43923.643 ops/s -Iteration 1: 44252.185 ops/s - -# Run progress: 22.73% complete, ETA 00:09:58 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299663905991386 as seed for Random -42362.442 ops/s -Iteration 1: 44065.961 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 44159.073 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 24.24% complete, ETA 00:09:52 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299677454366240 as seed for Random -27565.352 ops/s -Iteration 1: 32621.386 ops/s - -# Run progress: 25.76% complete, ETA 00:09:45 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299691040263365 as seed for Random -33959.744 ops/s -Iteration 1: 34735.259 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 33678.323 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 27.27% complete, ETA 00:09:37 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299704264736600 as seed for Random -92676.109 ops/s -Iteration 1: 91268.638 ops/s - -# Run progress: 28.79% complete, ETA 00:09:28 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299717503136750 as seed for Random -96834.705 ops/s -Iteration 1: 99406.102 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 95337.370 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:09:18 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299730718509129 as seed for Random -98923.223 ops/s -Iteration 1: 97688.315 ops/s - -# Run progress: 31.82% complete, ETA 00:09:09 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299743951690012 as seed for Random -100752.377 ops/s -Iteration 1: 103585.805 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 100637.060 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:08:58 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299757153986251 as seed for Random -96973.159 ops/s -Iteration 1: 95493.949 ops/s - -# Run progress: 34.85% complete, ETA 00:08:48 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299770346850521 as seed for Random -88990.209 ops/s -Iteration 1: 85263.506 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 90378.728 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 36.36% complete, ETA 00:08:37 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299783610829078 as seed for Random -13620.604 ops/s -Iteration 1: 15717.134 ops/s - -# Run progress: 37.88% complete, ETA 00:08:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299796798250227 as seed for Random -13481.138 ops/s -Iteration 1: 12860.643 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 14288.889 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon - -# Run progress: 39.39% complete, ETA 00:08:15 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299810346076392 as seed for Random -29989.486 ops/s -Iteration 1: 32013.119 ops/s - -# Run progress: 40.91% complete, ETA 00:08:05 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299824030866699 as seed for Random -30198.786 ops/s -Iteration 1: 32461.455 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 32237.287 ops/s - - -# JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:07:54 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299837565490902 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -2118,23 +390,281 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -# Run progress: 43.94% complete, ETA 00:07:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299838982253990 as seed for Random + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 9.09% complete, ETA 00:04:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=955001058874 as seed for Random +94740.213 ops/s +Iteration 1: 101489.957 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 101489.957 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:04:44 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=967782716767 as seed for Random +83585.708 ops/s +Iteration 1: 88646.354 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 88646.354 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 15.15% complete, ETA 00:04:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=980616410973 as seed for Random +35055.432 ops/s +Iteration 1: 67644.771 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 67644.771 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 18.18% complete, ETA 00:04:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=993427378898 as seed for Random +675.865 ops/s +Iteration 1: 420.385 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 420.385 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 21.21% complete, ETA 00:04:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1006284163831 as seed for Random +54925.976 ops/s +Iteration 1: 63835.138 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 63835.138 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 24.24% complete, ETA 00:04:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1019116555289 as seed for Random +17156.462 ops/s +Iteration 1: 22902.511 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 22902.511 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 27.27% complete, ETA 00:04:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1031983700379 as seed for Random +69446.462 ops/s +Iteration 1: 77159.763 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 77159.763 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:04:27 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1044798398183 as seed for Random +65697.957 ops/s +Iteration 1: 73275.413 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 73275.413 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:04:18 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1057596922404 as seed for Random +64153.176 ops/s +Iteration 1: 75057.028 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 75057.028 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 36.36% complete, ETA 00:04:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1070418457504 as seed for Random +3965.532 ops/s +Iteration 1: 5906.722 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 5906.722 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon + +# Run progress: 39.39% complete, ETA 00:03:57 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1083206180889 as seed for Random +17231.662 ops/s +Iteration 1: 23718.058 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": + 23718.058 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:03:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1096009723667 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -2189,20 +719,11 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more @@ -2500,8 +1021,7 @@ stream.writeVal((java.lang.String)e); at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -2520,9 +1040,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e at javassist.ClassPool.makeClass(ClassPool.java:814) at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more + ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -2564,7 +1084,8 @@ stream.writeVal((java.lang.String)e); at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -2577,13 +1098,22 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more + ... 37 more com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { @@ -3156,9 +1686,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3167,29 +1697,21 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:07:03 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299840423808438 as seed for Random -29740.100 ops/s -Iteration 1: 30385.236 ops/s - -# Run progress: 46.97% complete, ETA 00:06:53 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299853924621223 as seed for Random -29782.695 ops/s -Iteration 1: 30592.454 ops/s +# Run progress: 45.45% complete, ETA 00:03:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1096795584472 as seed for Random +28498.161 ops/s +Iteration 1: 33529.383 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 30488.845 ops/s + 33529.383 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3198,29 +1720,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:06:43 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299867453787825 as seed for Random -83475.639 ops/s -Iteration 1: 90907.082 ops/s - -# Run progress: 50.00% complete, ETA 00:06:32 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299880909259227 as seed for Random -83122.741 ops/s -Iteration 1: 83749.061 ops/s +# Run progress: 48.48% complete, ETA 00:03:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1109616020066 as seed for Random +57511.120 ops/s +Iteration 1: 76343.834 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 87328.072 ops/s + 76343.834 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3229,29 +1743,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:06:22 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299894407983654 as seed for Random -30010.501 ops/s -Iteration 1: 32223.395 ops/s - -# Run progress: 53.03% complete, ETA 00:06:11 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299908111208517 as seed for Random -29811.025 ops/s -Iteration 1: 34746.240 ops/s +# Run progress: 51.52% complete, ETA 00:03:02 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1122444915706 as seed for Random +32611.333 ops/s +Iteration 1: 38188.160 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 33484.818 ops/s + 38188.160 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3260,29 +1766,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:06:01 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299921629769128 as seed for Random -23042.830 ops/s -Iteration 1: 28318.219 ops/s - -# Run progress: 56.06% complete, ETA 00:05:50 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299935377145675 as seed for Random -24977.463 ops/s -Iteration 1: 29081.426 ops/s +# Run progress: 54.55% complete, ETA 00:02:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1135279960845 as seed for Random +20826.417 ops/s +Iteration 1: 29855.214 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 28699.823 ops/s + 29855.214 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3291,29 +1789,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:05:39 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299948892685298 as seed for Random -34450.341 ops/s -Iteration 1: 39226.340 ops/s - -# Run progress: 59.09% complete, ETA 00:05:28 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299962446761400 as seed for Random -35379.895 ops/s -Iteration 1: 41351.861 ops/s +# Run progress: 57.58% complete, ETA 00:02:41 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1148076100427 as seed for Random +36712.847 ops/s +Iteration 1: 54404.040 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 40289.101 ops/s + 54404.040 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3322,29 +1812,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:05:17 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299976127967810 as seed for Random -14096.342 ops/s -Iteration 1: 14491.045 ops/s - -# Run progress: 62.12% complete, ETA 00:05:05 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=299989869280413 as seed for Random -9965.294 ops/s -Iteration 1: 14342.733 ops/s +# Run progress: 60.61% complete, ETA 00:02:31 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1160946834511 as seed for Random +13501.535 ops/s +Iteration 1: 17423.928 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 14416.889 ops/s + 17423.928 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3353,29 +1835,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:04:54 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300003638499868 as seed for Random -82401.037 ops/s -Iteration 1: 97815.672 ops/s - -# Run progress: 65.15% complete, ETA 00:04:43 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300017150099156 as seed for Random -85295.696 ops/s -Iteration 1: 89569.896 ops/s +# Run progress: 63.64% complete, ETA 00:02:20 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1173799777726 as seed for Random +50736.201 ops/s +Iteration 1: 67003.023 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 93692.784 ops/s + 67003.023 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3384,29 +1858,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:04:31 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300030647263697 as seed for Random -50425.244 ops/s -Iteration 1: 63573.511 ops/s - -# Run progress: 68.18% complete, ETA 00:04:19 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300044084583708 as seed for Random -54212.139 ops/s -Iteration 1: 65310.236 ops/s +# Run progress: 66.67% complete, ETA 00:02:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1186648852156 as seed for Random +64142.887 ops/s +Iteration 1: 77863.721 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 64441.873 ops/s + 77863.721 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3415,29 +1881,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:04:07 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300057663610521 as seed for Random -8286.536 ops/s -Iteration 1: 10832.232 ops/s - -# Run progress: 71.21% complete, ETA 00:03:55 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300071137875319 as seed for Random -8777.187 ops/s -Iteration 1: 10619.001 ops/s +# Run progress: 69.70% complete, ETA 00:01:57 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1199435010200 as seed for Random +2994.347 ops/s +Iteration 1: 5497.323 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 10725.616 ops/s + 5497.323 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3446,29 +1904,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:03:43 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300084718739879 as seed for Random -6672.752 ops/s -Iteration 1: 7610.534 ops/s - -# Run progress: 74.24% complete, ETA 00:03:31 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300098222075143 as seed for Random -6783.292 ops/s -Iteration 1: 7497.711 ops/s +# Run progress: 72.73% complete, ETA 00:01:46 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1212284574074 as seed for Random +4302.468 ops/s +Iteration 1: 5124.982 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 7554.123 ops/s + 5124.982 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3477,29 +1927,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:03:19 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300111829370628 as seed for Random -27266.289 ops/s -Iteration 1: 29347.074 ops/s - -# Run progress: 77.27% complete, ETA 00:03:07 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300125378790548 as seed for Random -32280.378 ops/s -Iteration 1: 32920.126 ops/s +# Run progress: 75.76% complete, ETA 00:01:34 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1225063038013 as seed for Random +22727.482 ops/s +Iteration 1: 41103.073 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 31133.600 ops/s + 41103.073 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3508,29 +1950,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:02:55 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300138924015725 as seed for Random -9642.738 ops/s -Iteration 1: 11948.562 ops/s - -# Run progress: 80.30% complete, ETA 00:02:42 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300152368658020 as seed for Random -10519.131 ops/s -Iteration 1: 12236.918 ops/s +# Run progress: 78.79% complete, ETA 00:01:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1237875819997 as seed for Random +5946.713 ops/s +Iteration 1: 12712.642 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 12092.740 ops/s + 12712.642 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3539,29 +1973,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:02:30 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300165809157475 as seed for Random -34878.148 ops/s -Iteration 1: 38602.108 ops/s - -# Run progress: 83.33% complete, ETA 00:02:18 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300179212559356 as seed for Random -33168.819 ops/s -Iteration 1: 37622.052 ops/s +# Run progress: 81.82% complete, ETA 00:01:11 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1250746472839 as seed for Random +22086.824 ops/s +Iteration 1: 38750.699 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 38112.080 ops/s + 38750.699 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3570,29 +1996,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:02:05 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300192857696511 as seed for Random -66993.986 ops/s -Iteration 1: 80183.820 ops/s - -# Run progress: 86.36% complete, ETA 00:01:53 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300206570536026 as seed for Random -42915.930 ops/s -Iteration 1: 44458.780 ops/s +# Run progress: 84.85% complete, ETA 00:00:59 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1263538205778 as seed for Random +44060.462 ops/s +Iteration 1: 50897.380 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 62321.300 ops/s + 50897.380 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3601,29 +2019,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:01:41 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300220275981658 as seed for Random -8467.812 ops/s -Iteration 1: 11149.868 ops/s - -# Run progress: 89.39% complete, ETA 00:01:28 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300234207120873 as seed for Random -8186.878 ops/s -Iteration 1: 12535.543 ops/s +# Run progress: 87.88% complete, ETA 00:00:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1276356800254 as seed for Random +2611.387 ops/s +Iteration 1: 2918.275 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 11842.706 ops/s + 2918.275 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3632,29 +2042,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:01:15 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300247831001002 as seed for Random -4809.287 ops/s -Iteration 1: 5762.476 ops/s - -# Run progress: 92.42% complete, ETA 00:01:03 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300261499048981 as seed for Random -4712.322 ops/s -Iteration 1: 5783.885 ops/s +# Run progress: 90.91% complete, ETA 00:00:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1289212018827 as seed for Random +6955.513 ops/s +Iteration 1: 10827.237 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 5773.181 ops/s + 10827.237 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3663,29 +2065,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:50 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300275150956308 as seed for Random -6178.747 ops/s -Iteration 1: 6167.751 ops/s - -# Run progress: 95.45% complete, ETA 00:00:38 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300288737229235 as seed for Random -5996.106 ops/s -Iteration 1: 6691.274 ops/s +# Run progress: 93.94% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1302061519660 as seed for Random +3024.218 ops/s +Iteration 1: 4976.389 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 6429.512 ops/s + 4976.389 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3694,26 +2088,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:25 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300302442501601 as seed for Random -9854.222 ops/s -Iteration 1: 11724.326 ops/s - -# Run progress: 98.48% complete, ETA 00:00:12 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=300316181620083 as seed for Random -10560.771 ops/s -Iteration 1: 11539.264 ops/s +# Run progress: 96.97% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1314968206989 as seed for Random +10021.826 ops/s +Iteration 1: 15098.258 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 11631.795 ops/s + 15098.258 ops/s -# Run complete. Total time: 00:14:01 +# Run complete. Total time: 00:06:39 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -3722,34 +2108,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 2 114531.353 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 2 89917.118 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 2 114508.712 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 2 89277.436 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 2 53726.393 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 2 295.878 ops/s -c.g.f.j.databind.Serialization.genson thrpt 2 44159.073 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2 33678.323 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 2 95337.370 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 2 100637.060 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 2 90378.728 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 2 14288.889 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 2 32237.287 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 2 30488.845 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 2 87328.072 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 2 33484.818 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2 28699.823 ops/s -c.g.f.j.stream.Serialization.genson thrpt 2 40289.101 ops/s -c.g.f.j.stream.Serialization.gson thrpt 2 14416.889 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 2 93692.784 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 2 64441.873 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 2 10725.616 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 2 7554.123 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2 31133.600 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 2 12092.740 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 2 38112.080 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 2 62321.300 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 2 11842.706 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 2 5773.181 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 2 6429.512 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 2 11631.795 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 82938.252 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 72072.501 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 101489.957 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 88646.354 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 67644.771 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 420.385 ops/s +c.g.f.j.databind.Serialization.genson thrpt 63835.138 ops/s +c.g.f.j.databind.Serialization.gson thrpt 22902.511 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 77159.763 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 73275.413 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 75057.028 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 5906.722 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 23718.058 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 33529.383 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 76343.834 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 38188.160 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 29855.214 ops/s +c.g.f.j.stream.Serialization.genson thrpt 54404.040 ops/s +c.g.f.j.stream.Serialization.gson thrpt 17423.928 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 67003.023 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 77863.721 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 5497.323 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 5124.982 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 41103.073 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 12712.642 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 38750.699 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 50897.380 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 2918.275 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 10827.237 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 4976.389 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 15098.258 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt index 2e14719..492c8bb 100644 --- a/output/users-ser-1-100.txt +++ b/output/users-ser-1-100.txt @@ -1,7 +1,7 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -10,29 +10,21 @@ # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb -# Run progress: 0.00% complete, ETA 00:13:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=298585768449823 as seed for Random -10320.877 ops/s -Iteration 1: 10780.606 ops/s - -# Run progress: 1.52% complete, ETA 00:14:22 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=298599019564176 as seed for Random -11059.269 ops/s -Iteration 1: 10597.304 ops/s +# Run progress: 0.00% complete, ETA 00:06:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1729048314578 as seed for Random +7730.030 ops/s +Iteration 1: 8490.228 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 10688.955 ops/s + 8490.228 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -41,7 +33,1449 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:14:08 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=298612265677184 as seed for Random +# Run progress: 3.03% complete, ETA 00:06:53 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1741939837506 as seed for Random +6666.539 ops/s +Iteration 1: 7747.152 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": + 7747.152 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon + +# Run progress: 6.06% complete, ETA 00:06:39 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1754789471045 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 9.09% complete, ETA 00:04:25 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1755535350578 as seed for Random +8719.589 ops/s +Iteration 1: 9597.384 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 9597.384 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 12.12% complete, ETA 00:04:45 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1768356124020 as seed for Random +9199.086 ops/s +Iteration 1: 9198.173 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 9198.173 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 15.15% complete, ETA 00:04:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1781203346298 as seed for Random +2507.693 ops/s +Iteration 1: 3339.815 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 3339.815 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 18.18% complete, ETA 00:04:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1794055336273 as seed for Random +171.183 ops/s +Iteration 1: 128.951 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 128.951 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 21.21% complete, ETA 00:04:50 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1807265920509 as seed for Random +5139.264 ops/s +Iteration 1: 6066.236 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 6066.236 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 24.24% complete, ETA 00:04:44 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1820174295569 as seed for Random +1968.696 ops/s +Iteration 1: 2454.146 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 2454.146 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 27.27% complete, ETA 00:04:37 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1833085823682 as seed for Random +6727.210 ops/s +Iteration 1: 7983.638 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 7983.638 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 30.30% complete, ETA 00:04:29 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1845989140738 as seed for Random +6481.602 ops/s +Iteration 1: 7297.183 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 7297.183 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 33.33% complete, ETA 00:04:19 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1858813627917 as seed for Random +6298.397 ops/s +Iteration 1: 7255.259 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 7255.259 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 36.36% complete, ETA 00:04:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1871639749441 as seed for Random +529.383 ops/s +Iteration 1: 586.984 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 586.984 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon + +# Run progress: 39.39% complete, ETA 00:03:59 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1884479628466 as seed for Random +1802.342 ops/s +Iteration 1: 2263.917 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": + 2263.917 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 42.42% complete, ETA 00:03:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1897287597114 as seed for Random + + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + + + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart + +# Run progress: 45.45% complete, ETA 00:03:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1898976019327 as seed for Random +1742.160 ops/s +Iteration 1: 1985.808 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": + 1985.808 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare + +# Run progress: 48.48% complete, ETA 00:03:14 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1911787046829 as seed for Random +4691.856 ops/s +Iteration 1: 7024.208 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": + 7024.208 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi + +# Run progress: 51.52% complete, ETA 00:03:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1924610070094 as seed for Random +2814.045 ops/s +Iteration 1: 3589.359 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": + 3589.359 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson + +# Run progress: 54.55% complete, ETA 00:02:53 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1937445311555 as seed for Random +1746.557 ops/s +Iteration 1: 2918.649 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": + 2918.649 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson + +# Run progress: 57.58% complete, ETA 00:02:43 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1950256446434 as seed for Random +4347.686 ops/s +Iteration 1: 6017.528 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": + 6017.528 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson + +# Run progress: 60.61% complete, ETA 00:02:32 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1963069631060 as seed for Random +1134.523 ops/s +Iteration 1: 1538.539 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": + 1538.539 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson + +# Run progress: 63.64% complete, ETA 00:02:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1975874314581 as seed for Random +5577.598 ops/s +Iteration 1: 6672.714 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": + 6672.714 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson + +# Run progress: 66.67% complete, ETA 00:02:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=1988697734907 as seed for Random +5247.414 ops/s +Iteration 1: 7430.126 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": + 7430.126 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio + +# Run progress: 69.70% complete, ETA 00:01:58 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2001614007038 as seed for Random +253.920 ops/s +Iteration 1: 543.946 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": + 543.946 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple + +# Run progress: 72.73% complete, ETA 00:01:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2014464634267 as seed for Random +406.368 ops/s +Iteration 1: 506.076 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": + 506.076 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson + +# Run progress: 75.76% complete, ETA 00:01:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2027408292170 as seed for Random +1664.464 ops/s +Iteration 1: 2637.500 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": + 2637.500 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson + +# Run progress: 78.79% complete, ETA 00:01:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2040256738456 as seed for Random +715.325 ops/s +Iteration 1: 1166.771 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": + 1166.771 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi + +# Run progress: 81.82% complete, ETA 00:01:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2053127945624 as seed for Random +2089.041 ops/s +Iteration 1: 3883.982 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": + 3883.982 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson + +# Run progress: 84.85% complete, ETA 00:01:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2065947100833 as seed for Random +2178.778 ops/s +Iteration 1: 2390.270 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": + 2390.270 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson + +# Run progress: 87.88% complete, ETA 00:00:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2078751842412 as seed for Random +615.235 ops/s +Iteration 1: 778.566 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": + 778.566 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson + +# Run progress: 90.91% complete, ETA 00:00:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2091630638033 as seed for Random +587.657 ops/s +Iteration 1: 891.647 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": + 891.647 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry + +# Run progress: 93.94% complete, ETA 00:00:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2104482544220 as seed for Random +319.067 ops/s +Iteration 1: 462.515 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": + 462.515 ops/s + + +# JMH version: 1.33 +# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 +# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java + +# Run progress: 96.97% complete, ETA 00:00:12 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2117379051643 as seed for Random +845.592 ops/s +Iteration 1: 1262.940 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": + 1262.940 ops/s + + +# Run complete. Total time: 00:06:41 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 8490.228 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 7747.152 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 9597.384 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 9198.173 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 3339.815 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 128.951 ops/s +c.g.f.j.databind.Serialization.genson thrpt 6066.236 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2454.146 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 7983.638 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 7297.183 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 7255.259 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 586.984 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 2263.917 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 1985.808 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 7024.208 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 3589.359 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2918.649 ops/s +c.g.f.j.stream.Serialization.genson thrpt 6017.528 ops/s +c.g.f.j.stream.Serialization.gson thrpt 1538.539 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 6672.714 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 7430.126 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 543.946 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 506.076 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2637.500 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 1166.771 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 3883.982 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 2390.270 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 778.566 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 891.647 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 462.515 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 1262.940 ops/s From 635901a4ac0cb4fd27d99ef5d5fab14c204b5fa9 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 23 Oct 2022 19:45:38 +0000 Subject: [PATCH 14/42] result adding back to repo --- output/clients-deser-1-1.txt | 1334 ++++++++++++++++++++++++--- output/clients-deser-1-10.txt | 325 ++++--- output/clients-deser-1-100.txt | 1533 ++++--------------------------- output/clients-ser-1-1.txt | 710 +++------------ output/clients-ser-1-10.txt | 242 ++--- output/clients-ser-1-100.txt | 170 ++-- output/users-deser-1-1.txt | 493 +++++----- output/users-deser-1-10.txt | 1572 ++++++++++++++++++++++++++------ output/users-deser-1-100.txt | 620 +++++++------ output/users-ser-1-1.txt | 1247 +++++++++++++++++++------ output/users-ser-1-10.txt | 1164 +++++------------------ output/users-ser-1-100.txt | 536 ++++++----- 12 files changed, 5392 insertions(+), 4554 deletions(-) diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt index 6f476a6..8876139 100644 --- a/output/clients-deser-1-1.txt +++ b/output/clients-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2714972710412 as seed for Random -109422.875 ops/s -Iteration 1: 195843.145 ops/s +# Warmup Iteration 1: Using SEED=2747407290803 as seed for Random +49799.243 ops/s +Iteration 1: 69813.132 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 195843.145 ops/s + 69813.132 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2727888271706 as seed for Random -72062.856 ops/s -Iteration 1: 139723.892 ops/s +# Warmup Iteration 1: Using SEED=2760629949598 as seed for Random +66072.085 ops/s +Iteration 1: 115353.853 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 139723.892 ops/s + 115353.853 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2740848415790 as seed for Random -534407.503 ops/s -Iteration 1: 660058.735 ops/s +# Warmup Iteration 1: Using SEED=2773893175130 as seed for Random +147274.456 ops/s +Iteration 1: 526744.581 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 660058.735 ops/s + 526744.581 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2753720208912 as seed for Random -331747.412 ops/s -Iteration 1: 403821.864 ops/s +# Warmup Iteration 1: Using SEED=2787076306606 as seed for Random +238388.177 ops/s +Iteration 1: 329874.807 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 403821.864 ops/s + 329874.807 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2766548396439 as seed for Random -22328.650 ops/s -Iteration 1: 136185.287 ops/s +# Warmup Iteration 1: Using SEED=2800217222783 as seed for Random +15168.572 ops/s +Iteration 1: 17519.893 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 136185.287 ops/s + 17519.893 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:08 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2779435282007 as seed for Random -16662.555 ops/s -Iteration 1: 22900.451 ops/s +# Warmup Iteration 1: Using SEED=2813391954447 as seed for Random +8617.082 ops/s +Iteration 1: 15353.786 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 22900.451 ops/s + 15353.786 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2792309074022 as seed for Random -72256.801 ops/s -Iteration 1: 132890.742 ops/s +# Warmup Iteration 1: Using SEED=2826621546799 as seed for Random +69826.799 ops/s +Iteration 1: 147872.927 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 132890.742 ops/s + 147872.927 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2805165673536 as seed for Random -87491.953 ops/s -Iteration 1: 146670.417 ops/s +# Warmup Iteration 1: Using SEED=2839809569500 as seed for Random +66673.444 ops/s +Iteration 1: 137969.430 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 146670.417 ops/s + 137969.430 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2818066659029 as seed for Random -86103.734 ops/s -Iteration 1: 181487.397 ops/s +# Warmup Iteration 1: Using SEED=2852959031476 as seed for Random +32423.169 ops/s +Iteration 1: 76207.497 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 181487.397 ops/s + 76207.497 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2830916273147 as seed for Random -184860.746 ops/s -Iteration 1: 342357.044 ops/s +# Warmup Iteration 1: Using SEED=2866160789095 as seed for Random +44130.257 ops/s +Iteration 1: 73813.363 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 342357.044 ops/s + 73813.363 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2843783296794 as seed for Random -212252.598 ops/s -Iteration 1: 319158.494 ops/s +# Warmup Iteration 1: Using SEED=2879352113389 as seed for Random +95723.594 ops/s +Iteration 1: 205702.687 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 319158.494 ops/s + 205702.687 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2856605361950 as seed for Random -67292.793 ops/s -Iteration 1: 135682.643 ops/s +# Warmup Iteration 1: Using SEED=2892494819823 as seed for Random +52044.958 ops/s +Iteration 1: 131520.888 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 135682.643 ops/s + 131520.888 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2869457632255 as seed for Random +# Warmup Iteration 1: Using SEED=2905623148697 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7af8cd64 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2e0363ba with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -380,25 +380,86 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6494cd2 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -416,9 +477,95 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e9b8a25 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -436,9 +583,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5336fc0d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -456,10 +680,87 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1f225368 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) @@ -476,9 +777,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3d5e9c18 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -496,9 +874,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -516,9 +971,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@330c38ab with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -536,9 +1068,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@15620d39 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -556,9 +1165,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3aaeb282 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -576,9 +1262,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7f319177 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -596,9 +1359,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@39387b92 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -616,9 +1456,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@503a20d7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -636,9 +1553,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@30443ace with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -656,9 +1650,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@675a21a1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -676,6 +1747,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null at com.jsoniter.Codegen$1.decode(Codegen.java:115) @@ -715,13 +1793,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2871183599829 as seed for Random -58339.879 ops/s -Iteration 1: 159976.890 ops/s +# Warmup Iteration 1: Using SEED=2907677591915 as seed for Random +27723.322 ops/s +Iteration 1: 47203.930 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 159976.890 ops/s + 47203.930 ops/s # JMH version: 1.33 @@ -738,16 +1816,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2884107745335 as seed for Random -134273.954 ops/s -Iteration 1: 212958.757 ops/s +# Warmup Iteration 1: Using SEED=2920827659430 as seed for Random +35168.615 ops/s +Iteration 1: 57692.797 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 212958.757 ops/s + 57692.797 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:06 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -756,17 +1834,17 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 195843.145 ops/s -Deserialization.avajejsonb_jackson thrpt 139723.892 ops/s -Deserialization.dsljson thrpt 660058.735 ops/s -Deserialization.dsljson_reflection thrpt 403821.864 ops/s -Deserialization.fastjson thrpt 136185.287 ops/s -Deserialization.flexjson thrpt 22900.451 ops/s -Deserialization.genson thrpt 132890.742 ops/s -Deserialization.gson thrpt 146670.417 ops/s -Deserialization.jackson thrpt 181487.397 ops/s -Deserialization.jackson_afterburner thrpt 342357.044 ops/s -Deserialization.jackson_blackbird thrpt 319158.494 ops/s -Deserialization.jodd thrpt 135682.643 ops/s -Deserialization.logansquare thrpt 159976.890 ops/s -Deserialization.moshi thrpt 212958.757 ops/s +Deserialization.avajejsonb thrpt 69813.132 ops/s +Deserialization.avajejsonb_jackson thrpt 115353.853 ops/s +Deserialization.dsljson thrpt 526744.581 ops/s +Deserialization.dsljson_reflection thrpt 329874.807 ops/s +Deserialization.fastjson thrpt 17519.893 ops/s +Deserialization.flexjson thrpt 15353.786 ops/s +Deserialization.genson thrpt 147872.927 ops/s +Deserialization.gson thrpt 137969.430 ops/s +Deserialization.jackson thrpt 76207.497 ops/s +Deserialization.jackson_afterburner thrpt 73813.363 ops/s +Deserialization.jackson_blackbird thrpt 205702.687 ops/s +Deserialization.jodd thrpt 131520.888 ops/s +Deserialization.logansquare thrpt 47203.930 ops/s +Deserialization.moshi thrpt 57692.797 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt index 57f141e..8198ef0 100644 --- a/output/clients-deser-1-10.txt +++ b/output/clients-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3079989152475 as seed for Random -6991.744 ops/s -Iteration 1: 13422.108 ops/s +# Warmup Iteration 1: Using SEED=3122158819438 as seed for Random +3158.191 ops/s +Iteration 1: 8500.142 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 13422.108 ops/s + 8500.142 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3092909222074 as seed for Random -4803.638 ops/s -Iteration 1: 10885.728 ops/s +# Warmup Iteration 1: Using SEED=3135378559084 as seed for Random +1626.889 ops/s +Iteration 1: 3196.850 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 10885.728 ops/s + 3196.850 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:47 +# Run progress: 13.33% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3105763382367 as seed for Random -47468.526 ops/s -Iteration 1: 68111.731 ops/s +# Warmup Iteration 1: Using SEED=3148600692583 as seed for Random +27417.431 ops/s +Iteration 1: 50690.447 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 68111.731 ops/s + 50690.447 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3118682423215 as seed for Random -40353.334 ops/s -Iteration 1: 56860.639 ops/s +# Warmup Iteration 1: Using SEED=3161827592866 as seed for Random +26218.435 ops/s +Iteration 1: 42855.089 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 56860.639 ops/s + 42855.089 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:21 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3131533888883 as seed for Random -4974.118 ops/s -Iteration 1: 8196.940 ops/s +# Warmup Iteration 1: Using SEED=3174974360318 as seed for Random +2151.332 ops/s +Iteration 1: 4026.212 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 8196.940 ops/s + 4026.212 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:08 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3144409448886 as seed for Random -1668.522 ops/s -Iteration 1: 2816.778 ops/s +# Warmup Iteration 1: Using SEED=3188138507480 as seed for Random +829.126 ops/s +Iteration 1: 1439.665 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 2816.778 ops/s + 1439.665 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3157303270900 as seed for Random -6145.070 ops/s -Iteration 1: 12203.330 ops/s +# Warmup Iteration 1: Using SEED=3201342189357 as seed for Random +2130.977 ops/s +Iteration 1: 3783.298 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 12203.330 ops/s + 3783.298 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3170192786787 as seed for Random -4689.621 ops/s -Iteration 1: 9467.249 ops/s +# Warmup Iteration 1: Using SEED=3214508847406 as seed for Random +2892.629 ops/s +Iteration 1: 4793.595 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 9467.249 ops/s + 4793.595 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3183110184287 as seed for Random -4905.800 ops/s -Iteration 1: 7847.839 ops/s +# Warmup Iteration 1: Using SEED=3227723688459 as seed for Random +1780.706 ops/s +Iteration 1: 3615.817 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 7847.839 ops/s + 3615.817 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3195963175468 as seed for Random -4598.851 ops/s -Iteration 1: 8532.895 ops/s +# Warmup Iteration 1: Using SEED=3240860200380 as seed for Random +2719.655 ops/s +Iteration 1: 4067.186 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 8532.895 ops/s + 4067.186 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3208819262250 as seed for Random -4613.850 ops/s -Iteration 1: 9628.825 ops/s +# Warmup Iteration 1: Using SEED=3254020844765 as seed for Random +2330.727 ops/s +Iteration 1: 3872.554 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 9628.825 ops/s + 3872.554 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3221669615395 as seed for Random -4328.310 ops/s -Iteration 1: 9333.617 ops/s +# Warmup Iteration 1: Using SEED=3267195100470 as seed for Random +1957.962 ops/s +Iteration 1: 4557.626 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 9333.617 ops/s + 4557.626 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3234500350193 as seed for Random +# Warmup Iteration 1: Using SEED=3280408679103 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2e279923 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@39bf78f6 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -367,7 +367,8 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -386,9 +387,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at javassist.ClassPool.makeClass(ClassPool.java:814) at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more + ... 51 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3dfb47dd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1161fa3d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -485,7 +486,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@13d7e506 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7871bf3 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -574,15 +575,24 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@38a14a8c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4799f844 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -679,7 +689,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@703c16e1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1e361f6d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -776,7 +786,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@d787427 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2274cf90 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -873,7 +883,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@451e1469 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@495dbfcc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -970,7 +980,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@59933ac0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@57094200 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1067,7 +1077,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@8bad477 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3d7ca875 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1164,7 +1174,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6d176fb8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@47e538f8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1261,7 +1271,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5157adb with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4d14336f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1358,7 +1368,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7fcdd006 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3edfae2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1455,7 +1465,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2d03266a with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@23a08da8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1544,24 +1554,15 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@509f2789 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1ef424b8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1658,7 +1659,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6296cfa5 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1755,14 +1756,83 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6462d4d2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1775,6 +1845,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more @@ -1793,13 +1870,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3236288894534 as seed for Random -2853.778 ops/s -Iteration 1: 7483.558 ops/s +# Warmup Iteration 1: Using SEED=3281563468380 as seed for Random +1820.649 ops/s +Iteration 1: 2210.200 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 7483.558 ops/s + 2210.200 ops/s # JMH version: 1.33 @@ -1816,16 +1893,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3249227054325 as seed for Random -4777.871 ops/s -Iteration 1: 9088.661 ops/s +# Warmup Iteration 1: Using SEED=3294776533195 as seed for Random +2287.294 ops/s +Iteration 1: 4215.180 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 9088.661 ops/s + 4215.180 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:05 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1834,17 +1911,17 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 13422.108 ops/s -Deserialization.avajejsonb_jackson thrpt 10885.728 ops/s -Deserialization.dsljson thrpt 68111.731 ops/s -Deserialization.dsljson_reflection thrpt 56860.639 ops/s -Deserialization.fastjson thrpt 8196.940 ops/s -Deserialization.flexjson thrpt 2816.778 ops/s -Deserialization.genson thrpt 12203.330 ops/s -Deserialization.gson thrpt 9467.249 ops/s -Deserialization.jackson thrpt 7847.839 ops/s -Deserialization.jackson_afterburner thrpt 8532.895 ops/s -Deserialization.jackson_blackbird thrpt 9628.825 ops/s -Deserialization.jodd thrpt 9333.617 ops/s -Deserialization.logansquare thrpt 7483.558 ops/s -Deserialization.moshi thrpt 9088.661 ops/s +Deserialization.avajejsonb thrpt 8500.142 ops/s +Deserialization.avajejsonb_jackson thrpt 3196.850 ops/s +Deserialization.dsljson thrpt 50690.447 ops/s +Deserialization.dsljson_reflection thrpt 42855.089 ops/s +Deserialization.fastjson thrpt 4026.212 ops/s +Deserialization.flexjson thrpt 1439.665 ops/s +Deserialization.genson thrpt 3783.298 ops/s +Deserialization.gson thrpt 4793.595 ops/s +Deserialization.jackson thrpt 3615.817 ops/s +Deserialization.jackson_afterburner thrpt 4067.186 ops/s +Deserialization.jackson_blackbird thrpt 3872.554 ops/s +Deserialization.jodd thrpt 4557.626 ops/s +Deserialization.logansquare thrpt 2210.200 ops/s +Deserialization.moshi thrpt 4215.180 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt index cb515aa..2ca5bd0 100644 --- a/output/clients-deser-1-100.txt +++ b/output/clients-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3446005558416 as seed for Random -739.480 ops/s -Iteration 1: 1354.504 ops/s +# Warmup Iteration 1: Using SEED=3496872176853 as seed for Random +341.232 ops/s +Iteration 1: 854.563 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 1354.504 ops/s + 854.563 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:02 +# Run progress: 6.67% complete, ETA 00:03:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3458975464609 as seed for Random -583.259 ops/s -Iteration 1: 1199.883 ops/s +# Warmup Iteration 1: Using SEED=3510218142735 as seed for Random +259.907 ops/s +Iteration 1: 632.799 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 1199.883 ops/s + 632.799 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3471928389464 as seed for Random -4592.338 ops/s -Iteration 1: 6879.712 ops/s +# Warmup Iteration 1: Using SEED=3523518970897 as seed for Random +2237.874 ops/s +Iteration 1: 5438.048 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 6879.712 ops/s + 5438.048 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3484897651742 as seed for Random -3868.900 ops/s -Iteration 1: 5706.454 ops/s +# Warmup Iteration 1: Using SEED=3536749490269 as seed for Random +2876.198 ops/s +Iteration 1: 4453.816 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 5706.454 ops/s + 4453.816 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3497804128591 as seed for Random -442.610 ops/s -Iteration 1: 757.924 ops/s +# Warmup Iteration 1: Using SEED=3549988098425 as seed for Random +238.506 ops/s +Iteration 1: 449.212 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 757.924 ops/s + 449.212 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3510730829122 as seed for Random -121.131 ops/s -Iteration 1: 240.152 ops/s +# Warmup Iteration 1: Using SEED=3563225182498 as seed for Random +74.640 ops/s +Iteration 1: 81.691 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 240.152 ops/s + 81.691 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:02:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3523814855091 as seed for Random -560.596 ops/s -Iteration 1: 1072.643 ops/s +# Warmup Iteration 1: Using SEED=3576994343748 as seed for Random +300.931 ops/s +Iteration 1: 818.449 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 1072.643 ops/s + 818.449 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3536695597184 as seed for Random -592.395 ops/s -Iteration 1: 1197.332 ops/s +# Warmup Iteration 1: Using SEED=3590283099548 as seed for Random +255.187 ops/s +Iteration 1: 399.132 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 1197.332 ops/s + 399.132 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3549679584195 as seed for Random -431.366 ops/s -Iteration 1: 739.095 ops/s +# Warmup Iteration 1: Using SEED=3603505343151 as seed for Random +235.715 ops/s +Iteration 1: 403.960 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 739.095 ops/s + 403.960 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3562609174584 as seed for Random -471.956 ops/s -Iteration 1: 936.015 ops/s +# Warmup Iteration 1: Using SEED=3616759964353 as seed for Random +243.322 ops/s +Iteration 1: 453.194 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 936.015 ops/s + 453.194 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3575528529739 as seed for Random -459.387 ops/s -Iteration 1: 941.747 ops/s +# Warmup Iteration 1: Using SEED=3630060182840 as seed for Random +291.799 ops/s +Iteration 1: 436.216 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 941.747 ops/s + 436.216 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3588432017982 as seed for Random -572.390 ops/s -Iteration 1: 1030.732 ops/s +# Warmup Iteration 1: Using SEED=3643293868704 as seed for Random +205.698 ops/s +Iteration 1: 339.723 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 1030.732 ops/s + 339.723 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3601311387232 as seed for Random +# Warmup Iteration 1: Using SEED=3656553347940 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3529a560 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1d4228d1 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -367,8 +367,7 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -381,86 +380,25 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 51 more + ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@688d357a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -478,86 +416,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@31b31439 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -575,86 +436,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3f870c16 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -672,377 +456,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6b1de88f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@66323378 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@69106e0e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@aec9aa4 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1060,86 +476,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@234347ac with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1155,88 +494,11 @@ return obj; at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1c6f7333 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1254,86 +516,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1028b479 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1351,86 +536,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@21ea2536 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1448,86 +556,49 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7a0adc9b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1545,86 +616,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@20606389 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1642,86 +636,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1739,86 +656,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@684828ba with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1836,22 +676,27 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) @@ -1870,13 +715,13 @@ Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protect # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3602221086233 as seed for Random -450.120 ops/s -Iteration 1: 906.462 ops/s +# Warmup Iteration 1: Using SEED=3658649759361 as seed for Random +173.743 ops/s +Iteration 1: 236.412 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 906.462 ops/s + 236.412 ops/s # JMH version: 1.33 @@ -1893,16 +738,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3615218475597 as seed for Random -498.230 ops/s -Iteration 1: 778.545 ops/s +# Warmup Iteration 1: Using SEED=3672044516681 as seed for Random +321.978 ops/s +Iteration 1: 552.024 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 778.545 ops/s + 552.024 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:08 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1911,17 +756,17 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 1354.504 ops/s -Deserialization.avajejsonb_jackson thrpt 1199.883 ops/s -Deserialization.dsljson thrpt 6879.712 ops/s -Deserialization.dsljson_reflection thrpt 5706.454 ops/s -Deserialization.fastjson thrpt 757.924 ops/s -Deserialization.flexjson thrpt 240.152 ops/s -Deserialization.genson thrpt 1072.643 ops/s -Deserialization.gson thrpt 1197.332 ops/s -Deserialization.jackson thrpt 739.095 ops/s -Deserialization.jackson_afterburner thrpt 936.015 ops/s -Deserialization.jackson_blackbird thrpt 941.747 ops/s -Deserialization.jodd thrpt 1030.732 ops/s -Deserialization.logansquare thrpt 906.462 ops/s -Deserialization.moshi thrpt 778.545 ops/s +Deserialization.avajejsonb thrpt 854.563 ops/s +Deserialization.avajejsonb_jackson thrpt 632.799 ops/s +Deserialization.dsljson thrpt 5438.048 ops/s +Deserialization.dsljson_reflection thrpt 4453.816 ops/s +Deserialization.fastjson thrpt 449.212 ops/s +Deserialization.flexjson thrpt 81.691 ops/s +Deserialization.genson thrpt 818.449 ops/s +Deserialization.gson thrpt 399.132 ops/s +Deserialization.jackson thrpt 403.960 ops/s +Deserialization.jackson_afterburner thrpt 453.194 ops/s +Deserialization.jackson_blackbird thrpt 436.216 ops/s +Deserialization.jodd thrpt 339.723 ops/s +Deserialization.logansquare thrpt 236.412 ops/s +Deserialization.moshi thrpt 552.024 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt index be7e712..7737b2f 100644 --- a/output/clients-ser-1-1.txt +++ b/output/clients-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2532453980543 as seed for Random -435181.466 ops/s -Iteration 1: 575449.320 ops/s +# Warmup Iteration 1: Using SEED=2559947390814 as seed for Random +290393.240 ops/s +Iteration 1: 443824.503 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 575449.320 ops/s + 443824.503 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2545374256449 as seed for Random -378817.863 ops/s -Iteration 1: 512371.383 ops/s +# Warmup Iteration 1: Using SEED=2573141895303 as seed for Random +165450.732 ops/s +Iteration 1: 303680.811 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 512371.383 ops/s + 303680.811 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2558279269905 as seed for Random -923432.758 ops/s -Iteration 1: 1038767.015 ops/s +# Warmup Iteration 1: Using SEED=2586410592480 as seed for Random +606310.593 ops/s +Iteration 1: 759846.423 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 1038767.015 ops/s + 759846.423 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:34 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2571092043171 as seed for Random -699576.496 ops/s -Iteration 1: 742712.918 ops/s +# Warmup Iteration 1: Using SEED=2599619659915 as seed for Random +536217.600 ops/s +Iteration 1: 624688.371 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 742712.918 ops/s + 624688.371 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:21 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2584011489934 as seed for Random -189140.665 ops/s -Iteration 1: 420176.879 ops/s +# Warmup Iteration 1: Using SEED=2612819772886 as seed for Random +120691.819 ops/s +Iteration 1: 384081.876 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 420176.879 ops/s + 384081.876 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:08 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2596871782777 as seed for Random -3078.867 ops/s -Iteration 1: 1701.640 ops/s +# Warmup Iteration 1: Using SEED=2625997050882 as seed for Random +1966.954 ops/s +Iteration 1: 1427.062 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1701.640 ops/s + 1427.062 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:55 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2609720165280 as seed for Random -309068.996 ops/s -Iteration 1: 392699.794 ops/s +# Warmup Iteration 1: Using SEED=2639182869153 as seed for Random +151031.142 ops/s +Iteration 1: 217537.312 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 392699.794 ops/s + 217537.312 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2622571920700 as seed for Random -113244.018 ops/s -Iteration 1: 168243.196 ops/s +# Warmup Iteration 1: Using SEED=2652316455801 as seed for Random +63553.061 ops/s +Iteration 1: 149391.569 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 168243.196 ops/s + 149391.569 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2635415463641 as seed for Random -479718.677 ops/s -Iteration 1: 572042.682 ops/s +# Warmup Iteration 1: Using SEED=2665456589632 as seed for Random +259150.523 ops/s +Iteration 1: 434670.596 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 572042.682 ops/s + 434670.596 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2648341364446 as seed for Random -245708.871 ops/s -Iteration 1: 346864.535 ops/s +# Warmup Iteration 1: Using SEED=2678624600134 as seed for Random +244564.192 ops/s +Iteration 1: 376325.737 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 346864.535 ops/s + 376325.737 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2661195621484 as seed for Random -455264.710 ops/s -Iteration 1: 623072.492 ops/s +# Warmup Iteration 1: Using SEED=2691758390481 as seed for Random +99074.384 ops/s +Iteration 1: 194165.481 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 623072.492 ops/s + 194165.481 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2674085053475 as seed for Random -37749.749 ops/s -Iteration 1: 54995.689 ops/s +# Warmup Iteration 1: Using SEED=2704939302838 as seed for Random +20784.506 ops/s +Iteration 1: 51159.015 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 54995.689 ops/s + 51159.015 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2686956160781 as seed for Random +# Warmup Iteration 1: Using SEED=2718135615250 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { if (obj == null) { stream.writeNull(); return; } stream.writeRaw(obj.toString()); @@ -334,41 +334,25 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -385,41 +369,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -436,41 +388,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -487,41 +407,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -538,41 +426,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -589,41 +445,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -640,50 +464,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -700,41 +483,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -751,41 +502,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -802,41 +521,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -853,41 +540,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -904,45 +559,14 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -955,41 +579,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1006,41 +598,9 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1057,21 +617,13 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1102,13 +654,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2688712974053 as seed for Random -278301.354 ops/s -Iteration 1: 446843.772 ops/s +# Warmup Iteration 1: Using SEED=2720193717752 as seed for Random +148149.805 ops/s +Iteration 1: 334427.634 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 446843.772 ops/s + 334427.634 ops/s # JMH version: 1.33 @@ -1125,16 +677,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2701593330795 as seed for Random -224784.639 ops/s -Iteration 1: 331885.272 ops/s +# Warmup Iteration 1: Using SEED=2733439234561 as seed for Random +91109.443 ops/s +Iteration 1: 188799.205 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 331885.272 ops/s + 188799.205 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:06 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1142,18 +694,18 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 575449.320 ops/s -Serialization.avajejsonb_jackson thrpt 512371.383 ops/s -Serialization.dsljson thrpt 1038767.015 ops/s -Serialization.dsljson_reflection thrpt 742712.918 ops/s -Serialization.fastjson thrpt 420176.879 ops/s -Serialization.flexjson thrpt 1701.640 ops/s -Serialization.genson thrpt 392699.794 ops/s -Serialization.gson thrpt 168243.196 ops/s -Serialization.jackson thrpt 572042.682 ops/s -Serialization.jackson_afterburner thrpt 346864.535 ops/s -Serialization.jackson_blackbird thrpt 623072.492 ops/s -Serialization.jodd thrpt 54995.689 ops/s -Serialization.logansquare thrpt 446843.772 ops/s -Serialization.moshi thrpt 331885.272 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 443824.503 ops/s +Serialization.avajejsonb_jackson thrpt 303680.811 ops/s +Serialization.dsljson thrpt 759846.423 ops/s +Serialization.dsljson_reflection thrpt 624688.371 ops/s +Serialization.fastjson thrpt 384081.876 ops/s +Serialization.flexjson thrpt 1427.062 ops/s +Serialization.genson thrpt 217537.312 ops/s +Serialization.gson thrpt 149391.569 ops/s +Serialization.jackson thrpt 434670.596 ops/s +Serialization.jackson_afterburner thrpt 376325.737 ops/s +Serialization.jackson_blackbird thrpt 194165.481 ops/s +Serialization.jodd thrpt 51159.015 ops/s +Serialization.logansquare thrpt 334427.634 ops/s +Serialization.moshi thrpt 188799.205 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt index b52966a..b0fe01c 100644 --- a/output/clients-ser-1-10.txt +++ b/output/clients-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2897538653754 as seed for Random -38650.103 ops/s -Iteration 1: 46432.403 ops/s +# Warmup Iteration 1: Using SEED=2934782751998 as seed for Random +25998.018 ops/s +Iteration 1: 37433.072 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 46432.403 ops/s + 37433.072 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2910441780610 as seed for Random -32881.698 ops/s -Iteration 1: 43784.207 ops/s +# Warmup Iteration 1: Using SEED=2948005718346 as seed for Random +11774.475 ops/s +Iteration 1: 23070.638 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 43784.207 ops/s + 23070.638 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:47 +# Run progress: 13.33% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2923324657924 as seed for Random -93867.878 ops/s -Iteration 1: 120751.050 ops/s +# Warmup Iteration 1: Using SEED=2961211914324 as seed for Random +50804.901 ops/s +Iteration 1: 94151.109 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 120751.050 ops/s + 94151.109 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:34 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2936188928746 as seed for Random -83776.407 ops/s -Iteration 1: 91403.009 ops/s +# Warmup Iteration 1: Using SEED=2974388410370 as seed for Random +55575.639 ops/s +Iteration 1: 65958.887 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 91403.009 ops/s + 65958.887 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:21 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2949002870453 as seed for Random -10365.912 ops/s -Iteration 1: 34936.903 ops/s +# Warmup Iteration 1: Using SEED=2987564763072 as seed for Random +1887.428 ops/s +Iteration 1: 16875.738 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 34936.903 ops/s + 16875.738 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:08 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2961864424748 as seed for Random -652.095 ops/s -Iteration 1: 411.910 ops/s +# Warmup Iteration 1: Using SEED=3000713989685 as seed for Random +474.453 ops/s +Iteration 1: 312.971 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 411.910 ops/s + 312.971 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:55 +# Run progress: 40.00% complete, ETA 00:01:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2974786338102 as seed for Random -26395.514 ops/s -Iteration 1: 37495.255 ops/s +# Warmup Iteration 1: Using SEED=3014084735506 as seed for Random +13995.625 ops/s +Iteration 1: 23530.923 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 37495.255 ops/s + 23530.923 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2987692594847 as seed for Random -9873.703 ops/s -Iteration 1: 17637.586 ops/s +# Warmup Iteration 1: Using SEED=3027242913646 as seed for Random +4916.939 ops/s +Iteration 1: 11270.976 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 17637.586 ops/s + 11270.976 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3000579420980 as seed for Random -23074.160 ops/s -Iteration 1: 32073.128 ops/s +# Warmup Iteration 1: Using SEED=3040386322412 as seed for Random +14768.308 ops/s +Iteration 1: 23870.617 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 32073.128 ops/s + 23870.617 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3013484819941 as seed for Random -21933.819 ops/s -Iteration 1: 31775.776 ops/s +# Warmup Iteration 1: Using SEED=3053601809179 as seed for Random +14475.411 ops/s +Iteration 1: 24513.516 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 31775.776 ops/s + 24513.516 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3026288871765 as seed for Random -24703.013 ops/s -Iteration 1: 32621.122 ops/s +# Warmup Iteration 1: Using SEED=3066784386705 as seed for Random +11797.470 ops/s +Iteration 1: 22109.416 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 32621.122 ops/s + 22109.416 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3039123590066 as seed for Random -3596.730 ops/s -Iteration 1: 5957.832 ops/s +# Warmup Iteration 1: Using SEED=3079904001087 as seed for Random +3088.331 ops/s +Iteration 1: 5551.237 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 5957.832 ops/s + 5551.237 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3051959019454 as seed for Random +# Warmup Iteration 1: Using SEED=3093027442830 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { if (obj == null) { stream.writeNull(); return; } stream.writeRaw(obj.toString()); @@ -334,25 +334,41 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -369,13 +385,30 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -622,8 +655,7 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -654,13 +686,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3053662024864 as seed for Random -19235.144 ops/s -Iteration 1: 39558.512 ops/s +# Warmup Iteration 1: Using SEED=3095037314020 as seed for Random +10045.637 ops/s +Iteration 1: 29823.470 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 39558.512 ops/s + 29823.470 ops/s # JMH version: 1.33 @@ -677,16 +709,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3066549449150 as seed for Random -12979.071 ops/s -Iteration 1: 24700.474 ops/s +# Warmup Iteration 1: Using SEED=3108249840276 as seed for Random +11214.051 ops/s +Iteration 1: 18517.228 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 24700.474 ops/s + 18517.228 ops/s -# Run complete. Total time: 00:03:01 +# Run complete. Total time: 00:03:06 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -694,18 +726,18 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 46432.403 ops/s -Serialization.avajejsonb_jackson thrpt 43784.207 ops/s -Serialization.dsljson thrpt 120751.050 ops/s -Serialization.dsljson_reflection thrpt 91403.009 ops/s -Serialization.fastjson thrpt 34936.903 ops/s -Serialization.flexjson thrpt 411.910 ops/s -Serialization.genson thrpt 37495.255 ops/s -Serialization.gson thrpt 17637.586 ops/s -Serialization.jackson thrpt 32073.128 ops/s -Serialization.jackson_afterburner thrpt 31775.776 ops/s -Serialization.jackson_blackbird thrpt 32621.122 ops/s -Serialization.jodd thrpt 5957.832 ops/s -Serialization.logansquare thrpt 39558.512 ops/s -Serialization.moshi thrpt 24700.474 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 37433.072 ops/s +Serialization.avajejsonb_jackson thrpt 23070.638 ops/s +Serialization.dsljson thrpt 94151.109 ops/s +Serialization.dsljson_reflection thrpt 65958.887 ops/s +Serialization.fastjson thrpt 16875.738 ops/s +Serialization.flexjson thrpt 312.971 ops/s +Serialization.genson thrpt 23530.923 ops/s +Serialization.gson thrpt 11270.976 ops/s +Serialization.jackson thrpt 23870.617 ops/s +Serialization.jackson_afterburner thrpt 24513.516 ops/s +Serialization.jackson_blackbird thrpt 22109.416 ops/s +Serialization.jodd thrpt 5551.237 ops/s +Serialization.logansquare thrpt 29823.470 ops/s +Serialization.moshi thrpt 18517.228 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt index 6b4873a..39fd74d 100644 --- a/output/clients-ser-1-100.txt +++ b/output/clients-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3262778521233 as seed for Random -3713.713 ops/s -Iteration 1: 4512.200 ops/s +# Warmup Iteration 1: Using SEED=3308707509959 as seed for Random +1769.640 ops/s +Iteration 1: 3033.861 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 4512.200 ops/s + 3033.861 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:02 +# Run progress: 6.67% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3275737631058 as seed for Random -3057.865 ops/s -Iteration 1: 4121.493 ops/s +# Warmup Iteration 1: Using SEED=3321994634997 as seed for Random +1315.679 ops/s +Iteration 1: 2288.133 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 4121.493 ops/s + 2288.133 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3288598502307 as seed for Random -9672.091 ops/s -Iteration 1: 12468.054 ops/s +# Warmup Iteration 1: Using SEED=3335188088262 as seed for Random +5080.417 ops/s +Iteration 1: 9128.888 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 12468.054 ops/s + 9128.888 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3301463877517 as seed for Random -8369.016 ops/s -Iteration 1: 9125.196 ops/s +# Warmup Iteration 1: Using SEED=3348352039916 as seed for Random +6001.861 ops/s +Iteration 1: 6919.363 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 9125.196 ops/s + 6919.363 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:21 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3314335551091 as seed for Random -864.478 ops/s -Iteration 1: 2011.982 ops/s +# Warmup Iteration 1: Using SEED=3361535582090 as seed for Random +268.785 ops/s +Iteration 1: 1646.965 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 2011.982 ops/s + 1646.965 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3327302660351 as seed for Random -178.676 ops/s -Iteration 1: 153.756 ops/s +# Warmup Iteration 1: Using SEED=3374711373762 as seed for Random +99.122 ops/s +Iteration 1: 138.452 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 153.756 ops/s + 138.452 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3340527034083 as seed for Random -2679.251 ops/s -Iteration 1: 3331.764 ops/s +# Warmup Iteration 1: Using SEED=3388221253175 as seed for Random +1366.014 ops/s +Iteration 1: 2346.689 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 3331.764 ops/s + 2346.689 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3353415495096 as seed for Random -1301.509 ops/s -Iteration 1: 1708.542 ops/s +# Warmup Iteration 1: Using SEED=3401482971198 as seed for Random +691.618 ops/s +Iteration 1: 1442.671 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1708.542 ops/s + 1442.671 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3366263482109 as seed for Random -2380.993 ops/s -Iteration 1: 3180.545 ops/s +# Warmup Iteration 1: Using SEED=3414697672391 as seed for Random +1468.106 ops/s +Iteration 1: 2368.240 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 3180.545 ops/s + 2368.240 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3379250431985 as seed for Random -2413.814 ops/s -Iteration 1: 3177.630 ops/s +# Warmup Iteration 1: Using SEED=3427908893308 as seed for Random +1559.941 ops/s +Iteration 1: 2302.762 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 3177.630 ops/s + 2302.762 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3392159020802 as seed for Random -2367.284 ops/s -Iteration 1: 3149.410 ops/s +# Warmup Iteration 1: Using SEED=3441075445467 as seed for Random +1359.441 ops/s +Iteration 1: 2269.337 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 3149.410 ops/s + 2269.337 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3405043431126 as seed for Random -431.013 ops/s -Iteration 1: 600.065 ops/s +# Warmup Iteration 1: Using SEED=3454312729715 as seed for Random +279.651 ops/s +Iteration 1: 563.830 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 600.065 ops/s + 563.830 ops/s # JMH version: 1.33 @@ -286,9 +286,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3417916893137 as seed for Random +# Warmup Iteration 1: Using SEED=3467546027141 as seed for Random com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa @@ -654,13 +654,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3419675886256 as seed for Random -2078.091 ops/s -Iteration 1: 3591.638 ops/s +# Warmup Iteration 1: Using SEED=3469611319484 as seed for Random +586.086 ops/s +Iteration 1: 1871.633 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 3591.638 ops/s + 1871.633 ops/s # JMH version: 1.33 @@ -677,16 +677,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3432532060250 as seed for Random -1925.565 ops/s -Iteration 1: 2587.851 ops/s +# Warmup Iteration 1: Using SEED=3482837262071 as seed for Random +1154.560 ops/s +Iteration 1: 1853.584 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2587.851 ops/s + 1853.584 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:07 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -694,18 +694,18 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 4512.200 ops/s -Serialization.avajejsonb_jackson thrpt 4121.493 ops/s -Serialization.dsljson thrpt 12468.054 ops/s -Serialization.dsljson_reflection thrpt 9125.196 ops/s -Serialization.fastjson thrpt 2011.982 ops/s -Serialization.flexjson thrpt 153.756 ops/s -Serialization.genson thrpt 3331.764 ops/s -Serialization.gson thrpt 1708.542 ops/s -Serialization.jackson thrpt 3180.545 ops/s -Serialization.jackson_afterburner thrpt 3177.630 ops/s -Serialization.jackson_blackbird thrpt 3149.410 ops/s -Serialization.jodd thrpt 600.065 ops/s -Serialization.logansquare thrpt 3591.638 ops/s -Serialization.moshi thrpt 2587.851 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 3033.861 ops/s +Serialization.avajejsonb_jackson thrpt 2288.133 ops/s +Serialization.dsljson thrpt 9128.888 ops/s +Serialization.dsljson_reflection thrpt 6919.363 ops/s +Serialization.fastjson thrpt 1646.965 ops/s +Serialization.flexjson thrpt 138.452 ops/s +Serialization.genson thrpt 2346.689 ops/s +Serialization.gson thrpt 1442.671 ops/s +Serialization.jackson thrpt 2368.240 ops/s +Serialization.jackson_afterburner thrpt 2302.762 ops/s +Serialization.jackson_blackbird thrpt 2269.337 ops/s +Serialization.jodd thrpt 563.830 ops/s +Serialization.logansquare thrpt 1871.633 ops/s +Serialization.moshi thrpt 1853.584 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt index aba8c68..dca2cbb 100644 --- a/output/users-deser-1-1.txt +++ b/output/users-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=529466149513 as seed for Random -456980.068 ops/s -Iteration 1: 660468.064 ops/s +# Warmup Iteration 1: Using SEED=504490324203 as seed for Random +311987.178 ops/s +Iteration 1: 492033.093 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 660468.064 ops/s + 492033.093 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:51 +# Run progress: 3.03% complete, ETA 00:07:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=542277426150 as seed for Random -299985.898 ops/s -Iteration 1: 416275.867 ops/s +# Warmup Iteration 1: Using SEED=517647082635 as seed for Random +178781.040 ops/s +Iteration 1: 310526.340 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 416275.867 ops/s + 310526.340 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:37 +# Run progress: 6.06% complete, ETA 00:06:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=555068513567 as seed for Random +# Warmup Iteration 1: Using SEED=530733330373 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax @@ -99,10 +99,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -159,7 +161,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -306,7 +309,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -324,8 +327,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -343,17 +352,13 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -382,15 +387,15 @@ java.lang.IllegalStateException: More threads than expected # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:23 +# Run progress: 9.09% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=555756458424 as seed for Random -365121.104 ops/s -Iteration 1: 651105.616 ops/s +# Warmup Iteration 1: Using SEED=531697690383 as seed for Random +359325.543 ops/s +Iteration 1: 556105.928 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 651105.616 ops/s + 556105.928 ops/s # JMH version: 1.33 @@ -405,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:43 +# Run progress: 12.12% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=568557027901 as seed for Random -410319.272 ops/s -Iteration 1: 440155.368 ops/s +# Warmup Iteration 1: Using SEED=544739851328 as seed for Random +382991.616 ops/s +Iteration 1: 447869.601 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 440155.368 ops/s + 447869.601 ops/s # JMH version: 1.33 @@ -428,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:51 +# Run progress: 15.15% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=581405114043 as seed for Random -99489.040 ops/s -Iteration 1: 156192.991 ops/s +# Warmup Iteration 1: Using SEED=557748868452 as seed for Random +64429.316 ops/s +Iteration 1: 203225.666 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 156192.991 ops/s + 203225.666 ops/s # JMH version: 1.33 @@ -451,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:51 +# Run progress: 18.18% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=594242305752 as seed for Random -17605.232 ops/s -Iteration 1: 34034.055 ops/s +# Warmup Iteration 1: Using SEED=570818301400 as seed for Random +11533.118 ops/s +Iteration 1: 24186.404 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 34034.055 ops/s + 24186.404 ops/s # JMH version: 1.33 @@ -474,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:48 +# Run progress: 21.21% complete, ETA 00:04:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=607029216157 as seed for Random -225886.585 ops/s -Iteration 1: 276125.845 ops/s +# Warmup Iteration 1: Using SEED=584000804078 as seed for Random +120629.993 ops/s +Iteration 1: 210756.856 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 276125.845 ops/s + 210756.856 ops/s # JMH version: 1.33 @@ -497,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:42 +# Run progress: 24.24% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=619883331078 as seed for Random -231432.243 ops/s -Iteration 1: 283978.443 ops/s +# Warmup Iteration 1: Using SEED=597238399798 as seed for Random +88967.743 ops/s +Iteration 1: 182679.698 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 283978.443 ops/s + 182679.698 ops/s # JMH version: 1.33 @@ -520,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:35 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=632704760326 as seed for Random -253316.055 ops/s -Iteration 1: 387098.081 ops/s +# Warmup Iteration 1: Using SEED=610345188615 as seed for Random +162030.807 ops/s +Iteration 1: 296130.795 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 387098.081 ops/s + 296130.795 ops/s # JMH version: 1.33 @@ -543,15 +548,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:27 +# Run progress: 30.30% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=645490272521 as seed for Random -382280.571 ops/s -Iteration 1: 497640.950 ops/s +# Warmup Iteration 1: Using SEED=623459333215 as seed for Random +213238.847 ops/s +Iteration 1: 311726.504 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 497640.950 ops/s + 311726.504 ops/s # JMH version: 1.33 @@ -566,15 +571,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:17 +# Run progress: 33.33% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=658269598266 as seed for Random -336036.336 ops/s -Iteration 1: 451705.250 ops/s +# Warmup Iteration 1: Using SEED=636567084263 as seed for Random +247950.436 ops/s +Iteration 1: 318819.013 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 451705.250 ops/s + 318819.013 ops/s # JMH version: 1.33 @@ -589,15 +594,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:07 +# Run progress: 36.36% complete, ETA 00:04:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=671079183201 as seed for Random -234525.532 ops/s -Iteration 1: 320236.396 ops/s +# Warmup Iteration 1: Using SEED=649609061577 as seed for Random +163979.488 ops/s +Iteration 1: 263342.939 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 320236.396 ops/s + 263342.939 ops/s # JMH version: 1.33 @@ -612,15 +617,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:57 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=683862521157 as seed for Random -48549.050 ops/s -Iteration 1: 61890.718 ops/s +# Warmup Iteration 1: Using SEED=662663007518 as seed for Random +31737.770 ops/s +Iteration 1: 59944.782 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 61890.718 ops/s + 59944.782 ops/s # JMH version: 1.33 @@ -635,12 +640,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=696705562135 as seed for Random +# Warmup Iteration 1: Using SEED=675723172465 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1a600c45 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -727,24 +732,15 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1b8d605b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@45fa089 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -839,7 +835,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@610d1aac with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@43485b4b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -934,7 +930,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e43aae1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@139f53c8 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1021,15 +1017,24 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2c82bc8f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@644c0c7c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1124,7 +1129,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@192d89ac with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3c77b56d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1219,7 +1224,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@40ff5b37 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1b9baa13 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1314,7 +1319,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4fd154e7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3166c2ab with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1409,7 +1414,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2f7aa6d0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1504,7 +1509,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@54158471 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@72e4f4ac with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1578,7 +1583,8 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1597,9 +1603,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at javassist.ClassPool.makeClass(ClassPool.java:814) at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more + ... 49 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@86f4dd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1751f389 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1694,7 +1700,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@29328021 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@dbd6c65 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1789,7 +1795,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3c47aba4 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2114582d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1884,7 +1890,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@193daf47 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5b93fea9 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1958,8 +1964,7 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1978,9 +1983,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at javassist.ClassPool.makeClass(ClassPool.java:814) at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more + ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@442cc559 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@232ea3b5 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -2075,7 +2080,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3794ed4b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6665e975 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -2185,15 +2190,15 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:21 +# Run progress: 45.45% complete, ETA 00:03:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=697487323981 as seed for Random -288435.569 ops/s -Iteration 1: 349745.029 ops/s +# Warmup Iteration 1: Using SEED=676867239656 as seed for Random +210546.419 ops/s +Iteration 1: 294764.110 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 349745.029 ops/s + 294764.110 ops/s # JMH version: 1.33 @@ -2208,15 +2213,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:12 +# Run progress: 48.48% complete, ETA 00:03:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=710304517585 as seed for Random -156410.561 ops/s -Iteration 1: 238909.007 ops/s +# Warmup Iteration 1: Using SEED=689920492649 as seed for Random +78232.859 ops/s +Iteration 1: 163680.474 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 238909.007 ops/s + 163680.474 ops/s # JMH version: 1.33 @@ -2231,15 +2236,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:02 +# Run progress: 51.52% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=723099165920 as seed for Random -214243.682 ops/s -Iteration 1: 274137.986 ops/s +# Warmup Iteration 1: Using SEED=702993563663 as seed for Random +134222.569 ops/s +Iteration 1: 199040.165 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 274137.986 ops/s + 199040.165 ops/s # JMH version: 1.33 @@ -2254,15 +2259,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:52 +# Run progress: 54.55% complete, ETA 00:02:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=735895079284 as seed for Random -29788.726 ops/s -Iteration 1: 61505.567 ops/s +# Warmup Iteration 1: Using SEED=716051076956 as seed for Random +9356.951 ops/s +Iteration 1: 32713.446 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 61505.567 ops/s + 32713.446 ops/s # JMH version: 1.33 @@ -2277,15 +2282,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:41 +# Run progress: 57.58% complete, ETA 00:02:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=748678434701 as seed for Random -163547.015 ops/s -Iteration 1: 302500.758 ops/s +# Warmup Iteration 1: Using SEED=729147556257 as seed for Random +80728.326 ops/s +Iteration 1: 219132.193 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 302500.758 ops/s + 219132.193 ops/s # JMH version: 1.33 @@ -2300,15 +2305,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:30 +# Run progress: 60.61% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=761517834799 as seed for Random -209307.206 ops/s -Iteration 1: 282174.718 ops/s +# Warmup Iteration 1: Using SEED=742293730058 as seed for Random +21184.108 ops/s +Iteration 1: 25619.832 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 282174.718 ops/s + 25619.832 ops/s # JMH version: 1.33 @@ -2323,15 +2328,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:19 +# Run progress: 63.64% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=774331529265 as seed for Random -424651.559 ops/s -Iteration 1: 484429.580 ops/s +# Warmup Iteration 1: Using SEED=755354821499 as seed for Random +163212.361 ops/s +Iteration 1: 321396.840 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 484429.580 ops/s + 321396.840 ops/s # JMH version: 1.33 @@ -2346,15 +2351,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:08 +# Run progress: 66.67% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=787261721357 as seed for Random -33737.623 ops/s -Iteration 1: 40810.573 ops/s +# Warmup Iteration 1: Using SEED=768473323667 as seed for Random +17465.946 ops/s +Iteration 1: 26107.220 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 40810.573 ops/s + 26107.220 ops/s # JMH version: 1.33 @@ -2369,15 +2374,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:57 +# Run progress: 69.70% complete, ETA 00:02:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=799986261914 as seed for Random -26098.720 ops/s -Iteration 1: 38920.954 ops/s +# Warmup Iteration 1: Using SEED=781520859445 as seed for Random +21317.751 ops/s +Iteration 1: 30434.920 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 38920.954 ops/s + 30434.920 ops/s # JMH version: 1.33 @@ -2392,15 +2397,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=812810571059 as seed for Random -71656.231 ops/s -Iteration 1: 91538.299 ops/s +# Warmup Iteration 1: Using SEED=794649717890 as seed for Random +28924.746 ops/s +Iteration 1: 63721.099 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 91538.299 ops/s + 63721.099 ops/s # JMH version: 1.33 @@ -2415,15 +2420,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:34 +# Run progress: 75.76% complete, ETA 00:01:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=825627252309 as seed for Random -70544.797 ops/s -Iteration 1: 185217.917 ops/s +# Warmup Iteration 1: Using SEED=807769003532 as seed for Random +48710.293 ops/s +Iteration 1: 100106.584 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 185217.917 ops/s + 100106.584 ops/s # JMH version: 1.33 @@ -2438,15 +2443,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=838442793153 as seed for Random -37265.160 ops/s -Iteration 1: 54237.818 ops/s +# Warmup Iteration 1: Using SEED=820896424247 as seed for Random +35430.911 ops/s +Iteration 1: 50723.293 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 54237.818 ops/s + 50723.293 ops/s # JMH version: 1.33 @@ -2461,15 +2466,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=851233354720 as seed for Random -101451.723 ops/s -Iteration 1: 180799.069 ops/s +# Warmup Iteration 1: Using SEED=834054817019 as seed for Random +113237.936 ops/s +Iteration 1: 197146.952 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 180799.069 ops/s + 197146.952 ops/s # JMH version: 1.33 @@ -2484,15 +2489,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:00:59 +# Run progress: 84.85% complete, ETA 00:01:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=864022117705 as seed for Random -84848.844 ops/s -Iteration 1: 110077.648 ops/s +# Warmup Iteration 1: Using SEED=847178336968 as seed for Random +52065.057 ops/s +Iteration 1: 66598.765 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 110077.648 ops/s + 66598.765 ops/s # JMH version: 1.33 @@ -2507,15 +2512,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:47 +# Run progress: 87.88% complete, ETA 00:00:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=876791631819 as seed for Random -42838.535 ops/s -Iteration 1: 55365.432 ops/s +# Warmup Iteration 1: Using SEED=860277185984 as seed for Random +32034.889 ops/s +Iteration 1: 49543.151 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 55365.432 ops/s + 49543.151 ops/s # JMH version: 1.33 @@ -2532,13 +2537,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=889584440574 as seed for Random -50094.192 ops/s -Iteration 1: 69529.216 ops/s +# Warmup Iteration 1: Using SEED=873336423766 as seed for Random +21582.863 ops/s +Iteration 1: 37864.048 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 69529.216 ops/s + 37864.048 ops/s # JMH version: 1.33 @@ -2555,13 +2560,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=902443664978 as seed for Random -203398.724 ops/s -Iteration 1: 341360.452 ops/s +# Warmup Iteration 1: Using SEED=886373819784 as seed for Random +78565.126 ops/s +Iteration 1: 234210.177 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 341360.452 ops/s + 234210.177 ops/s # JMH version: 1.33 @@ -2578,16 +2583,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=915220623696 as seed for Random -167317.108 ops/s -Iteration 1: 270320.855 ops/s +# Warmup Iteration 1: Using SEED=899528372352 as seed for Random +89241.683 ops/s +Iteration 1: 169991.839 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 270320.855 ops/s + 169991.839 ops/s -# Run complete. Total time: 00:06:38 +# Run complete. Total time: 00:06:48 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2596,34 +2601,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 660468.064 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 416275.867 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 651105.616 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 440155.368 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 156192.991 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 34034.055 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 276125.845 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 283978.443 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 387098.081 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 497640.950 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 451705.250 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 320236.396 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 61890.718 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 349745.029 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 238909.007 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 274137.986 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 61505.567 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 302500.758 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 282174.718 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 484429.580 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 40810.573 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 38920.954 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 91538.299 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 185217.917 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 54237.818 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 180799.069 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 110077.648 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 55365.432 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 69529.216 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 341360.452 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 270320.855 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 492033.093 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 310526.340 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 556105.928 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 447869.601 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 203225.666 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 24186.404 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 210756.856 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 182679.698 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 296130.795 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 311726.504 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 318819.013 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 263342.939 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 59944.782 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 294764.110 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 163680.474 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 199040.165 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 32713.446 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 219132.193 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 25619.832 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 321396.840 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 26107.220 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 30434.920 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 63721.099 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 100106.584 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 50723.293 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 197146.952 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 66598.765 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 49543.151 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 37864.048 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 234210.177 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 169991.839 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt index 3bbf7bd..8b1b41c 100644 --- a/output/users-deser-1-10.txt +++ b/output/users-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1328463372355 as seed for Random -54163.151 ops/s -Iteration 1: 71823.206 ops/s +# Warmup Iteration 1: Using SEED=1323952992915 as seed for Random +32956.376 ops/s +Iteration 1: 54227.859 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 71823.206 ops/s + 54227.859 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:51 +# Run progress: 3.03% complete, ETA 00:06:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1341255856641 as seed for Random -36892.268 ops/s -Iteration 1: 47272.837 ops/s +# Warmup Iteration 1: Using SEED=1337013715068 as seed for Random +25439.006 ops/s +Iteration 1: 38217.059 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 47272.837 ops/s + 38217.059 ops/s # JMH version: 1.33 @@ -56,12 +56,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:38 +# Run progress: 6.06% complete, ETA 00:06:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1354128507327 as seed for Random +# Warmup Iteration 1: Using SEED=1350163845111 as seed for Random -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -79,6 +79,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -161,8 +167,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -214,12 +219,13 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -232,12 +238,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:24 +# Run progress: 9.09% complete, ETA 00:04:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1354823092292 as seed for Random -64970.075 ops/s -Iteration 1: 82255.557 ops/s +# Warmup Iteration 1: Using SEED=1351155011810 as seed for Random +41757.574 ops/s +Iteration 1: 59734.089 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 82255.557 ops/s + 59734.089 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:44 +# Run progress: 12.12% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1367677319141 as seed for Random -56286.354 ops/s -Iteration 1: 64748.714 ops/s +# Warmup Iteration 1: Using SEED=1364294709968 as seed for Random +42291.340 ops/s +Iteration 1: 47836.498 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 64748.714 ops/s + 47836.498 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:51 +# Run progress: 15.15% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1380488354969 as seed for Random -22899.535 ops/s -Iteration 1: 38071.710 ops/s +# Warmup Iteration 1: Using SEED=1377436286789 as seed for Random +14627.047 ops/s +Iteration 1: 28957.638 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 38071.710 ops/s + 28957.638 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:52 +# Run progress: 18.18% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1393352729341 as seed for Random -1901.213 ops/s -Iteration 1: 3991.155 ops/s +# Warmup Iteration 1: Using SEED=1390563968267 as seed for Random +1212.802 ops/s +Iteration 1: 2635.713 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 3991.155 ops/s + 2635.713 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:48 +# Run progress: 21.21% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1406152457495 as seed for Random -27325.579 ops/s -Iteration 1: 36630.888 ops/s +# Warmup Iteration 1: Using SEED=1403747745183 as seed for Random +21386.867 ops/s +Iteration 1: 29644.907 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 36630.888 ops/s + 29644.907 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:42 +# Run progress: 24.24% complete, ETA 00:04:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1418956477703 as seed for Random -30491.607 ops/s -Iteration 1: 38921.953 ops/s +# Warmup Iteration 1: Using SEED=1416842822680 as seed for Random +16187.329 ops/s +Iteration 1: 27710.065 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 38921.953 ops/s + 27710.065 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:35 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1431789775436 as seed for Random -33410.853 ops/s -Iteration 1: 45743.099 ops/s +# Warmup Iteration 1: Using SEED=1429928345536 as seed for Random +20731.899 ops/s +Iteration 1: 36079.792 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 45743.099 ops/s + 36079.792 ops/s # JMH version: 1.33 @@ -548,15 +548,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:27 +# Run progress: 30.30% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1444620605844 as seed for Random -43919.147 ops/s -Iteration 1: 53269.533 ops/s +# Warmup Iteration 1: Using SEED=1443055365189 as seed for Random +27288.084 ops/s +Iteration 1: 39828.090 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 53269.533 ops/s + 39828.090 ops/s # JMH version: 1.33 @@ -571,15 +571,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:18 +# Run progress: 33.33% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1457433937544 as seed for Random -39301.408 ops/s -Iteration 1: 50317.039 ops/s +# Warmup Iteration 1: Using SEED=1456180860287 as seed for Random +27216.626 ops/s +Iteration 1: 38224.529 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 50317.039 ops/s + 38224.529 ops/s # JMH version: 1.33 @@ -594,15 +594,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:08 +# Run progress: 36.36% complete, ETA 00:04:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1470212731110 as seed for Random -24789.110 ops/s -Iteration 1: 33877.564 ops/s +# Warmup Iteration 1: Using SEED=1469237257329 as seed for Random +11290.612 ops/s +Iteration 1: 26755.310 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 33877.564 ops/s + 26755.310 ops/s # JMH version: 1.33 @@ -617,15 +617,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:57 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1483020991905 as seed for Random -5684.386 ops/s -Iteration 1: 9033.656 ops/s +# Warmup Iteration 1: Using SEED=1482343567563 as seed for Random +4317.970 ops/s +Iteration 1: 6527.032 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 9033.656 ops/s + 6527.032 ops/s # JMH version: 1.33 @@ -640,12 +640,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1495862912524 as seed for Random +# Warmup Iteration 1: Using SEED=1495487292996 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1510126f with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@518506f1 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -749,8 +749,76 @@ Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protect at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@33e280c1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -768,9 +836,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@505cf006 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -788,9 +931,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@32318428 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -808,29 +1026,179 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7aae7867 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@37a3c8aa with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -848,9 +1216,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@9183ac1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -868,9 +1311,179 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@47e538f8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6897a4ef with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -888,9 +1501,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2d9ad6a0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -908,9 +1596,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1c50d72c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -928,9 +1691,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@690da177 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -948,9 +1786,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -968,9 +1881,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6ba18d86 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -988,30 +1976,84 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@dd1be42 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1029,6 +2071,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null at com.jsoniter.Codegen$1.decode(Codegen.java:115) @@ -1036,7 +2085,8 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1065,15 +2115,15 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:22 +# Run progress: 45.45% complete, ETA 00:03:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1497543773719 as seed for Random -42295.296 ops/s -Iteration 1: 51943.015 ops/s +# Warmup Iteration 1: Using SEED=1497562586238 as seed for Random +26709.458 ops/s +Iteration 1: 32610.318 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 51943.015 ops/s + 32610.318 ops/s # JMH version: 1.33 @@ -1088,15 +2138,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:13 +# Run progress: 48.48% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1510360465241 as seed for Random -20247.097 ops/s -Iteration 1: 42203.548 ops/s +# Warmup Iteration 1: Using SEED=1510709489065 as seed for Random +17907.436 ops/s +Iteration 1: 34438.411 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 42203.548 ops/s + 34438.411 ops/s # JMH version: 1.33 @@ -1111,15 +2161,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:03 +# Run progress: 51.52% complete, ETA 00:03:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1523191161390 as seed for Random -24735.183 ops/s -Iteration 1: 33532.802 ops/s +# Warmup Iteration 1: Using SEED=1523771088016 as seed for Random +14516.939 ops/s +Iteration 1: 18824.258 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 33532.802 ops/s + 18824.258 ops/s # JMH version: 1.33 @@ -1134,15 +2184,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:53 +# Run progress: 54.55% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1536006196334 as seed for Random -3678.339 ops/s -Iteration 1: 6932.237 ops/s +# Warmup Iteration 1: Using SEED=1536875773465 as seed for Random +1596.304 ops/s +Iteration 1: 3381.593 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 6932.237 ops/s + 3381.593 ops/s # JMH version: 1.33 @@ -1157,15 +2207,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:42 +# Run progress: 57.58% complete, ETA 00:02:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1548804523380 as seed for Random -15211.062 ops/s -Iteration 1: 39793.951 ops/s +# Warmup Iteration 1: Using SEED=1550023802595 as seed for Random +7132.397 ops/s +Iteration 1: 16503.405 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 39793.951 ops/s + 16503.405 ops/s # JMH version: 1.33 @@ -1180,15 +2230,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1561578744992 as seed for Random -21274.986 ops/s -Iteration 1: 23769.677 ops/s +# Warmup Iteration 1: Using SEED=1563239970122 as seed for Random +2462.729 ops/s +Iteration 1: 2522.815 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 23769.677 ops/s + 2522.815 ops/s # JMH version: 1.33 @@ -1203,15 +2253,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1574463954596 as seed for Random -36757.520 ops/s -Iteration 1: 52748.215 ops/s +# Warmup Iteration 1: Using SEED=1576671159699 as seed for Random +18624.693 ops/s +Iteration 1: 40066.434 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 52748.215 ops/s + 40066.434 ops/s # JMH version: 1.33 @@ -1226,15 +2276,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1587299316523 as seed for Random -10434.216 ops/s -Iteration 1: 19705.785 ops/s +# Warmup Iteration 1: Using SEED=1589820930860 as seed for Random +5099.410 ops/s +Iteration 1: 10464.920 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 19705.785 ops/s + 10464.920 ops/s # JMH version: 1.33 @@ -1249,15 +2299,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1600111550996 as seed for Random -3438.779 ops/s -Iteration 1: 5167.924 ops/s +# Warmup Iteration 1: Using SEED=1602854725107 as seed for Random +1577.358 ops/s +Iteration 1: 2877.693 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 5167.924 ops/s + 2877.693 ops/s # JMH version: 1.33 @@ -1272,15 +2322,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1612988082198 as seed for Random -7368.299 ops/s -Iteration 1: 12384.790 ops/s +# Warmup Iteration 1: Using SEED=1616028340628 as seed for Random +2927.850 ops/s +Iteration 1: 8761.819 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 12384.790 ops/s + 8761.819 ops/s # JMH version: 1.33 @@ -1295,15 +2345,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1625888700528 as seed for Random -3756.126 ops/s -Iteration 1: 23972.648 ops/s +# Warmup Iteration 1: Using SEED=1629286049765 as seed for Random +2251.407 ops/s +Iteration 1: 2589.172 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 23972.648 ops/s + 2589.172 ops/s # JMH version: 1.33 @@ -1318,15 +2368,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1638738060438 as seed for Random -4318.770 ops/s -Iteration 1: 5992.799 ops/s +# Warmup Iteration 1: Using SEED=1642417397550 as seed for Random +3812.278 ops/s +Iteration 1: 5456.138 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 5992.799 ops/s + 5456.138 ops/s # JMH version: 1.33 @@ -1341,15 +2391,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1651590661465 as seed for Random -5688.829 ops/s -Iteration 1: 15010.127 ops/s +# Warmup Iteration 1: Using SEED=1655505122377 as seed for Random +3658.254 ops/s +Iteration 1: 4094.118 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 15010.127 ops/s + 4094.118 ops/s # JMH version: 1.33 @@ -1364,15 +2414,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:00 +# Run progress: 84.85% complete, ETA 00:01:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1664430577130 as seed for Random -18377.745 ops/s -Iteration 1: 24597.438 ops/s +# Warmup Iteration 1: Using SEED=1668655365202 as seed for Random +8755.479 ops/s +Iteration 1: 17959.037 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 24597.438 ops/s + 17959.037 ops/s # JMH version: 1.33 @@ -1387,15 +2437,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1677259765491 as seed for Random -4788.341 ops/s -Iteration 1: 5955.610 ops/s +# Warmup Iteration 1: Using SEED=1681810337836 as seed for Random +3770.611 ops/s +Iteration 1: 5616.261 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 5955.610 ops/s + 5616.261 ops/s # JMH version: 1.33 @@ -1410,15 +2460,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1690111499655 as seed for Random -6108.869 ops/s -Iteration 1: 8463.218 ops/s +# Warmup Iteration 1: Using SEED=1694914079788 as seed for Random +3172.683 ops/s +Iteration 1: 6317.958 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 8463.218 ops/s + 6317.958 ops/s # JMH version: 1.33 @@ -1435,13 +2485,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1702914717987 as seed for Random -17088.210 ops/s -Iteration 1: 36929.338 ops/s +# Warmup Iteration 1: Using SEED=1707989865394 as seed for Random +6332.790 ops/s +Iteration 1: 26208.585 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 36929.338 ops/s + 26208.585 ops/s # JMH version: 1.33 @@ -1458,16 +2508,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1715694259904 as seed for Random -21154.742 ops/s -Iteration 1: 33322.034 ops/s +# Warmup Iteration 1: Using SEED=1721159674971 as seed for Random +3531.661 ops/s +Iteration 1: 22162.923 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 33322.034 ops/s + 22162.923 ops/s -# Run complete. Total time: 00:06:40 +# Run complete. Total time: 00:06:50 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1476,34 +2526,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 71823.206 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 47272.837 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 82255.557 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 64748.714 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 38071.710 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 3991.155 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 36630.888 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 38921.953 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 45743.099 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 53269.533 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 50317.039 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 33877.564 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 9033.656 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 51943.015 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 42203.548 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 33532.802 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 6932.237 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 39793.951 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 23769.677 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 52748.215 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 19705.785 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 5167.924 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 12384.790 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 23972.648 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 5992.799 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 15010.127 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 24597.438 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 5955.610 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 8463.218 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 36929.338 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 33322.034 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 54227.859 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 38217.059 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 59734.089 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 47836.498 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 28957.638 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 2635.713 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 29644.907 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 27710.065 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 36079.792 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 39828.090 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 38224.529 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 26755.310 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 6527.032 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 32610.318 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 34438.411 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 18824.258 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 3381.593 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 16503.405 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 2522.815 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 40066.434 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 10464.920 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 2877.693 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 8761.819 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2589.172 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 5456.138 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 4094.118 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 17959.037 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 5616.261 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 6317.958 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 26208.585 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 22162.923 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt index 5b703b8..11e9bff 100644 --- a/output/users-deser-1-100.txt +++ b/output/users-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2130825574121 as seed for Random -5217.675 ops/s -Iteration 1: 6885.986 ops/s +# Warmup Iteration 1: Using SEED=2147253736957 as seed for Random +3805.963 ops/s +Iteration 1: 5492.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 6885.986 ops/s + 5492.166 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:54 +# Run progress: 3.03% complete, ETA 00:07:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2143730260877 as seed for Random -3308.741 ops/s -Iteration 1: 4741.767 ops/s +# Warmup Iteration 1: Using SEED=2160399492480 as seed for Random +2459.705 ops/s +Iteration 1: 3720.105 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 4741.767 ops/s + 3720.105 ops/s # JMH version: 1.33 @@ -56,12 +56,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:39 +# Run progress: 6.06% complete, ETA 00:06:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2156539557102 as seed for Random +# Warmup Iteration 1: Using SEED=2173590697162 as seed for Random -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -79,12 +79,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -181,7 +175,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -199,13 +193,20 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -238,10 +239,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -255,10 +258,12 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -272,10 +277,12 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -289,10 +296,12 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -306,10 +315,12 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -323,10 +334,12 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -340,10 +353,12 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -372,15 +387,15 @@ java.lang.IllegalStateException: More threads than expected # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:24 +# Run progress: 9.09% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2157237267590 as seed for Random -5344.386 ops/s -Iteration 1: 7735.780 ops/s +# Warmup Iteration 1: Using SEED=2174656164517 as seed for Random +3587.689 ops/s +Iteration 1: 6163.138 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 7735.780 ops/s + 6163.138 ops/s # JMH version: 1.33 @@ -395,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:44 +# Run progress: 12.12% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2170064852510 as seed for Random -5505.855 ops/s -Iteration 1: 6199.881 ops/s +# Warmup Iteration 1: Using SEED=2187741682315 as seed for Random +4297.424 ops/s +Iteration 1: 5172.825 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 6199.881 ops/s + 5172.825 ops/s # JMH version: 1.33 @@ -418,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:51 +# Run progress: 15.15% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2182873765613 as seed for Random -2696.472 ops/s -Iteration 1: 4043.911 ops/s +# Warmup Iteration 1: Using SEED=2200831510849 as seed for Random +1563.312 ops/s +Iteration 1: 2868.496 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 4043.911 ops/s + 2868.496 ops/s # JMH version: 1.33 @@ -441,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:52 +# Run progress: 18.18% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2195744675513 as seed for Random -171.226 ops/s -Iteration 1: 323.395 ops/s +# Warmup Iteration 1: Using SEED=2213943912558 as seed for Random +104.484 ops/s +Iteration 1: 186.045 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 323.395 ops/s + 186.045 ops/s # JMH version: 1.33 @@ -464,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:49 +# Run progress: 21.21% complete, ETA 00:04:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2208624660514 as seed for Random -2563.051 ops/s -Iteration 1: 3507.681 ops/s +# Warmup Iteration 1: Using SEED=2227340444988 as seed for Random +1461.573 ops/s +Iteration 1: 2719.731 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 3507.681 ops/s + 2719.731 ops/s # JMH version: 1.33 @@ -487,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:43 +# Run progress: 24.24% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2221502044444 as seed for Random -2953.670 ops/s -Iteration 1: 3982.792 ops/s +# Warmup Iteration 1: Using SEED=2240490782796 as seed for Random +2431.528 ops/s +Iteration 1: 3340.400 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 3982.792 ops/s + 3340.400 ops/s # JMH version: 1.33 @@ -510,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:36 +# Run progress: 27.27% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2234367851448 as seed for Random -3536.892 ops/s -Iteration 1: 5017.949 ops/s +# Warmup Iteration 1: Using SEED=2253695172997 as seed for Random +2207.158 ops/s +Iteration 1: 3774.906 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 5017.949 ops/s + 3774.906 ops/s # JMH version: 1.33 @@ -533,15 +548,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:27 +# Run progress: 30.30% complete, ETA 00:04:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2247274367869 as seed for Random -4551.599 ops/s -Iteration 1: 5944.345 ops/s +# Warmup Iteration 1: Using SEED=2266789948539 as seed for Random +2786.443 ops/s +Iteration 1: 4176.848 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 5944.345 ops/s + 4176.848 ops/s # JMH version: 1.33 @@ -556,15 +571,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:18 +# Run progress: 33.33% complete, ETA 00:04:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2260068025368 as seed for Random -4111.938 ops/s -Iteration 1: 5218.377 ops/s +# Warmup Iteration 1: Using SEED=2279887735898 as seed for Random +2578.246 ops/s +Iteration 1: 3796.129 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 5218.377 ops/s + 3796.129 ops/s # JMH version: 1.33 @@ -579,15 +594,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:08 +# Run progress: 36.36% complete, ETA 00:04:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2272881195820 as seed for Random -2351.361 ops/s -Iteration 1: 2962.479 ops/s +# Warmup Iteration 1: Using SEED=2293047863183 as seed for Random +1340.099 ops/s +Iteration 1: 2893.072 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 2962.479 ops/s + 2893.072 ops/s # JMH version: 1.33 @@ -602,15 +617,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:58 +# Run progress: 39.39% complete, ETA 00:04:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2285701320513 as seed for Random -577.853 ops/s -Iteration 1: 855.571 ops/s +# Warmup Iteration 1: Using SEED=2306189305829 as seed for Random +447.400 ops/s +Iteration 1: 831.390 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 855.571 ops/s + 831.390 ops/s # JMH version: 1.33 @@ -625,12 +640,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:03:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2298536018959 as seed for Random +# Warmup Iteration 1: Using SEED=2319353549186 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4bbf5993 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -725,7 +740,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@12247744 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@29dcfba8 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -799,7 +814,8 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -812,15 +828,24 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more + ... 49 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4506bb70 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53c44d0b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -915,7 +940,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6015ba with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3b0894b4 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1010,7 +1035,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@42e5d77b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3d88c333 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1105,7 +1130,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@694657f3 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@56dca88 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1200,7 +1225,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6f282b61 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@52250b26 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1295,7 +1320,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@59c4a4a3 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5378a318 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1390,7 +1415,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@13a29962 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@58aeb444 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1485,7 +1510,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@32590a6f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3f0c4dc8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1559,8 +1584,7 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1579,9 +1603,9 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at javassist.ClassPool.makeClass(ClassPool.java:814) at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more + ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6ad2d490 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7956e2a3 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1676,7 +1700,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6a1b3847 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1771,7 +1795,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4d552bfd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@505cf006 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1866,7 +1890,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5d1c0b2 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@536909b1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1953,25 +1977,84 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@61335f7e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1989,6 +2072,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 48 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null at com.jsoniter.Codegen$1.decode(Codegen.java:115) @@ -2025,15 +2115,15 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:23 +# Run progress: 45.45% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2300251232223 as seed for Random -4304.884 ops/s -Iteration 1: 5226.007 ops/s +# Warmup Iteration 1: Using SEED=2321335218913 as seed for Random +2403.639 ops/s +Iteration 1: 3524.612 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 5226.007 ops/s + 3524.612 ops/s # JMH version: 1.33 @@ -2048,15 +2138,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:13 +# Run progress: 48.48% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2313083848644 as seed for Random -4200.565 ops/s -Iteration 1: 5274.994 ops/s +# Warmup Iteration 1: Using SEED=2334470421740 as seed for Random +1781.250 ops/s +Iteration 1: 3777.750 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 5274.994 ops/s + 3777.750 ops/s # JMH version: 1.33 @@ -2071,15 +2161,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:03 +# Run progress: 51.52% complete, ETA 00:03:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2325980745527 as seed for Random -2246.782 ops/s -Iteration 1: 3292.478 ops/s +# Warmup Iteration 1: Using SEED=2347633729203 as seed for Random +1226.578 ops/s +Iteration 1: 2098.036 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 3292.478 ops/s + 2098.036 ops/s # JMH version: 1.33 @@ -2094,15 +2184,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:53 +# Run progress: 54.55% complete, ETA 00:02:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2338893104945 as seed for Random -319.682 ops/s -Iteration 1: 678.835 ops/s +# Warmup Iteration 1: Using SEED=2360794917315 as seed for Random +260.065 ops/s +Iteration 1: 610.345 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 678.835 ops/s + 610.345 ops/s # JMH version: 1.33 @@ -2117,15 +2207,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:42 +# Run progress: 57.58% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2351746377230 as seed for Random -1600.337 ops/s -Iteration 1: 3606.728 ops/s +# Warmup Iteration 1: Using SEED=2373962726282 as seed for Random +1552.697 ops/s +Iteration 1: 3339.533 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 3606.728 ops/s + 3339.533 ops/s # JMH version: 1.33 @@ -2140,15 +2230,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2364581264000 as seed for Random -1165.101 ops/s -Iteration 1: 1556.113 ops/s +# Warmup Iteration 1: Using SEED=2387090995090 as seed for Random +569.602 ops/s +Iteration 1: 622.906 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 1556.113 ops/s + 622.906 ops/s # JMH version: 1.33 @@ -2163,15 +2253,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2377494512158 as seed for Random -2042.924 ops/s -Iteration 1: 5455.188 ops/s +# Warmup Iteration 1: Using SEED=2400541162355 as seed for Random +557.788 ops/s +Iteration 1: 596.421 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 5455.188 ops/s + 596.421 ops/s # JMH version: 1.33 @@ -2186,15 +2276,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2390383232613 as seed for Random -1458.917 ops/s -Iteration 1: 2846.353 ops/s +# Warmup Iteration 1: Using SEED=2413838674037 as seed for Random +474.381 ops/s +Iteration 1: 1875.295 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 2846.353 ops/s + 1875.295 ops/s # JMH version: 1.33 @@ -2209,15 +2299,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2403270800422 as seed for Random -325.243 ops/s -Iteration 1: 547.221 ops/s +# Warmup Iteration 1: Using SEED=2427061214256 as seed for Random +244.986 ops/s +Iteration 1: 487.437 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 547.221 ops/s + 487.437 ops/s # JMH version: 1.33 @@ -2232,15 +2322,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:47 +# Run progress: 72.73% complete, ETA 00:01:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2416114117953 as seed for Random -486.562 ops/s -Iteration 1: 1266.272 ops/s +# Warmup Iteration 1: Using SEED=2440267691764 as seed for Random +240.607 ops/s +Iteration 1: 774.534 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 1266.272 ops/s + 774.534 ops/s # JMH version: 1.33 @@ -2255,15 +2345,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2428974568555 as seed for Random -1967.470 ops/s -Iteration 1: 2871.256 ops/s +# Warmup Iteration 1: Using SEED=2453533675509 as seed for Random +271.026 ops/s +Iteration 1: 278.856 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 2871.256 ops/s + 278.856 ops/s # JMH version: 1.33 @@ -2278,15 +2368,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2441872334592 as seed for Random -413.405 ops/s -Iteration 1: 595.442 ops/s +# Warmup Iteration 1: Using SEED=2466792652510 as seed for Random +324.938 ops/s +Iteration 1: 538.715 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 595.442 ops/s + 538.715 ops/s # JMH version: 1.33 @@ -2301,15 +2391,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2454704032085 as seed for Random -1795.570 ops/s -Iteration 1: 3263.802 ops/s +# Warmup Iteration 1: Using SEED=2480030447063 as seed for Random +325.063 ops/s +Iteration 1: 486.079 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 3263.802 ops/s + 486.079 ops/s # JMH version: 1.33 @@ -2324,15 +2414,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:00 +# Run progress: 84.85% complete, ETA 00:01:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2467546799197 as seed for Random -2291.325 ops/s -Iteration 1: 3084.233 ops/s +# Warmup Iteration 1: Using SEED=2493256814497 as seed for Random +1349.393 ops/s +Iteration 1: 2209.720 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 3084.233 ops/s + 2209.720 ops/s # JMH version: 1.33 @@ -2347,15 +2437,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2480401264929 as seed for Random -490.258 ops/s -Iteration 1: 592.950 ops/s +# Warmup Iteration 1: Using SEED=2506403290450 as seed for Random +394.490 ops/s +Iteration 1: 542.150 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 592.950 ops/s + 542.150 ops/s # JMH version: 1.33 @@ -2370,15 +2460,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2493360784534 as seed for Random -384.509 ops/s -Iteration 1: 765.180 ops/s +# Warmup Iteration 1: Using SEED=2519573852625 as seed for Random +281.755 ops/s +Iteration 1: 596.255 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 765.180 ops/s + 596.255 ops/s # JMH version: 1.33 @@ -2395,13 +2485,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2506188657576 as seed for Random -2154.562 ops/s -Iteration 1: 4166.077 ops/s +# Warmup Iteration 1: Using SEED=2532808381404 as seed for Random +2154.193 ops/s +Iteration 1: 3111.952 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 4166.077 ops/s + 3111.952 ops/s # JMH version: 1.33 @@ -2418,16 +2508,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2519072397210 as seed for Random -1562.737 ops/s -Iteration 1: 3566.781 ops/s +# Warmup Iteration 1: Using SEED=2545978517598 as seed for Random +1668.020 ops/s +Iteration 1: 2391.956 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 3566.781 ops/s + 2391.956 ops/s -# Run complete. Total time: 00:06:41 +# Run complete. Total time: 00:06:51 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2436,34 +2526,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 6885.986 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4741.767 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 7735.780 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 6199.881 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 4043.911 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 323.395 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 3507.681 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 3982.792 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 5017.949 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 5944.345 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 5218.377 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 2962.479 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 855.571 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 5226.007 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 5274.994 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 3292.478 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 678.835 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 3606.728 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 1556.113 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 5455.188 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2846.353 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 547.221 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 1266.272 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2871.256 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 595.442 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 3263.802 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 3084.233 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 592.950 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 765.180 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 4166.077 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 3566.781 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 5492.166 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 3720.105 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 6163.138 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 5172.825 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 2868.496 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 186.045 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 2719.731 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 3340.400 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 3774.906 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 4176.848 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 3796.129 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 2893.072 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 831.390 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 3524.612 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 3777.750 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 2098.036 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 610.345 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 3339.533 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 622.906 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 596.421 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 1875.295 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 487.437 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 774.534 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 278.856 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 538.715 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 486.079 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 2209.720 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 542.150 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 596.255 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 3111.952 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 2391.956 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt index 0cc48f9..ad76a8a 100644 --- a/output/users-ser-1-1.txt +++ b/output/users-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=129098425243 as seed for Random -771425.115 ops/s -Iteration 1: 848648.412 ops/s +# Warmup Iteration 1: Using SEED=95432926115 as seed for Random +421318.961 ops/s +Iteration 1: 552189.065 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 848648.412 ops/s + 552189.065 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:53 +# Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=142005402492 as seed for Random -481298.964 ops/s -Iteration 1: 650036.894 ops/s +# Warmup Iteration 1: Using SEED=108479624306 as seed for Random +268775.781 ops/s +Iteration 1: 455731.176 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 650036.894 ops/s + 455731.176 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:39 +# Run progress: 6.06% complete, ETA 00:06:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=154848420544 as seed for Random +# Warmup Iteration 1: Using SEED=121613312083 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -101,13 +101,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -120,6 +122,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 20 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -187,8 +197,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -202,10 +211,13 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -219,10 +231,13 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -236,10 +251,13 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -253,10 +271,13 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -270,10 +291,13 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -307,10 +331,13 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -324,8 +351,7 @@ java.lang.IllegalStateException: More threads than expected at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -344,19 +370,14 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -385,15 +406,15 @@ java.lang.IllegalStateException: More threads than expected # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:24 +# Run progress: 9.09% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=155536755867 as seed for Random -711256.071 ops/s -Iteration 1: 813867.165 ops/s +# Warmup Iteration 1: Using SEED=122567388010 as seed for Random +520598.949 ops/s +Iteration 1: 679970.164 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 813867.165 ops/s + 679970.164 ops/s # JMH version: 1.33 @@ -408,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:44 +# Run progress: 12.12% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=168306642340 as seed for Random -743324.649 ops/s -Iteration 1: 778099.847 ops/s +# Warmup Iteration 1: Using SEED=135673173096 as seed for Random +532009.501 ops/s +Iteration 1: 584038.113 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 778099.847 ops/s + 584038.113 ops/s # JMH version: 1.33 @@ -431,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:51 +# Run progress: 15.15% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=181128724882 as seed for Random -436966.264 ops/s -Iteration 1: 672737.135 ops/s +# Warmup Iteration 1: Using SEED=148787402559 as seed for Random +355975.161 ops/s +Iteration 1: 553071.348 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 672737.135 ops/s + 553071.348 ops/s # JMH version: 1.33 @@ -454,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:51 +# Run progress: 18.18% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=193914420204 as seed for Random -2840.169 ops/s -Iteration 1: 1558.265 ops/s +# Warmup Iteration 1: Using SEED=161894873414 as seed for Random +1952.802 ops/s +Iteration 1: 1307.719 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1558.265 ops/s + 1307.719 ops/s # JMH version: 1.33 @@ -477,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:48 +# Run progress: 21.21% complete, ETA 00:04:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=206721467110 as seed for Random -357440.211 ops/s -Iteration 1: 440335.618 ops/s +# Warmup Iteration 1: Using SEED=174995912561 as seed for Random +213100.156 ops/s +Iteration 1: 273389.099 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 440335.618 ops/s + 273389.099 ops/s # JMH version: 1.33 @@ -500,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:42 +# Run progress: 24.24% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=219569099103 as seed for Random -156760.056 ops/s -Iteration 1: 217065.546 ops/s +# Warmup Iteration 1: Using SEED=188068122131 as seed for Random +103133.460 ops/s +Iteration 1: 163499.770 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 217065.546 ops/s + 163499.770 ops/s # JMH version: 1.33 @@ -523,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:35 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=232424274981 as seed for Random -516134.056 ops/s -Iteration 1: 604343.381 ops/s +# Warmup Iteration 1: Using SEED=201158777408 as seed for Random +343075.842 ops/s +Iteration 1: 472252.570 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 604343.381 ops/s + 472252.570 ops/s # JMH version: 1.33 @@ -546,15 +567,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:27 +# Run progress: 30.30% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=245194158883 as seed for Random -524093.185 ops/s -Iteration 1: 587617.423 ops/s +# Warmup Iteration 1: Using SEED=214307982450 as seed for Random +338541.101 ops/s +Iteration 1: 418097.369 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 587617.423 ops/s + 418097.369 ops/s # JMH version: 1.33 @@ -569,15 +590,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:17 +# Run progress: 33.33% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=257954698088 as seed for Random -545536.074 ops/s -Iteration 1: 632059.579 ops/s +# Warmup Iteration 1: Using SEED=227353714500 as seed for Random +336818.663 ops/s +Iteration 1: 412804.977 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 632059.579 ops/s + 412804.977 ops/s # JMH version: 1.33 @@ -592,15 +613,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:08 +# Run progress: 36.36% complete, ETA 00:04:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=270847020501 as seed for Random -41075.669 ops/s -Iteration 1: 54265.216 ops/s +# Warmup Iteration 1: Using SEED=240423364883 as seed for Random +26332.181 ops/s +Iteration 1: 51486.839 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 54265.216 ops/s + 51486.839 ops/s # JMH version: 1.33 @@ -615,15 +636,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:57 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=283656884100 as seed for Random -143515.414 ops/s -Iteration 1: 240660.833 ops/s +# Warmup Iteration 1: Using SEED=253466055228 as seed for Random +75042.167 ops/s +Iteration 1: 159427.397 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 240660.833 ops/s + 159427.397 ops/s # JMH version: 1.33 @@ -638,12 +659,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=296495840473 as seed for Random +# Warmup Iteration 1: Using SEED=266550238190 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -698,25 +719,53 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -733,9 +782,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -752,9 +845,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -771,9 +908,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -790,15 +971,59 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) @@ -809,9 +1034,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -828,13 +1097,58 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -847,9 +1161,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 37 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -866,9 +1224,62 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -885,9 +1296,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -904,9 +1359,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -923,9 +1422,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -942,9 +1485,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -961,9 +1548,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -980,14 +1611,57 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1000,6 +1674,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more @@ -1016,15 +1697,15 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:22 +# Run progress: 45.45% complete, ETA 00:03:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=298166706260 as seed for Random -312938.305 ops/s -Iteration 1: 352910.777 ops/s +# Warmup Iteration 1: Using SEED=267669985914 as seed for Random +199437.580 ops/s +Iteration 1: 240520.758 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 352910.777 ops/s + 240520.758 ops/s # JMH version: 1.33 @@ -1039,15 +1720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:13 +# Run progress: 48.48% complete, ETA 00:03:16 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=310941879017 as seed for Random -398367.641 ops/s -Iteration 1: 554933.211 ops/s +# Warmup Iteration 1: Using SEED=280769111043 as seed for Random +303734.964 ops/s +Iteration 1: 434984.630 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 554933.211 ops/s + 434984.630 ops/s # JMH version: 1.33 @@ -1062,15 +1743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:03 +# Run progress: 51.52% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=323765495417 as seed for Random -258216.914 ops/s -Iteration 1: 322624.103 ops/s +# Warmup Iteration 1: Using SEED=293941146097 as seed for Random +127081.378 ops/s +Iteration 1: 174194.689 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 322624.103 ops/s + 174194.689 ops/s # JMH version: 1.33 @@ -1085,15 +1766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:52 +# Run progress: 54.55% complete, ETA 00:02:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=336609862139 as seed for Random -123217.538 ops/s -Iteration 1: 204110.071 ops/s +# Warmup Iteration 1: Using SEED=307042450913 as seed for Random +57493.950 ops/s +Iteration 1: 157592.502 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 204110.071 ops/s + 157592.502 ops/s # JMH version: 1.33 @@ -1108,15 +1789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:42 +# Run progress: 57.58% complete, ETA 00:02:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=349392809160 as seed for Random -281408.084 ops/s -Iteration 1: 353771.585 ops/s +# Warmup Iteration 1: Using SEED=320143274133 as seed for Random +93388.230 ops/s +Iteration 1: 219611.116 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 353771.585 ops/s + 219611.116 ops/s # JMH version: 1.33 @@ -1131,15 +1812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=362181598397 as seed for Random -146244.048 ops/s -Iteration 1: 173365.040 ops/s +# Warmup Iteration 1: Using SEED=333212806357 as seed for Random +76647.878 ops/s +Iteration 1: 117825.306 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 173365.040 ops/s + 117825.306 ops/s # JMH version: 1.33 @@ -1154,15 +1835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=375002170783 as seed for Random -451638.034 ops/s -Iteration 1: 593522.282 ops/s +# Warmup Iteration 1: Using SEED=346366096049 as seed for Random +286739.980 ops/s +Iteration 1: 403279.551 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 593522.282 ops/s + 403279.551 ops/s # JMH version: 1.33 @@ -1177,15 +1858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=387851093646 as seed for Random -363393.824 ops/s -Iteration 1: 480183.139 ops/s +# Warmup Iteration 1: Using SEED=359584929506 as seed for Random +195394.931 ops/s +Iteration 1: 344043.455 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 480183.139 ops/s + 344043.455 ops/s # JMH version: 1.33 @@ -1200,15 +1881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=400715231430 as seed for Random -31382.651 ops/s -Iteration 1: 43291.955 ops/s +# Warmup Iteration 1: Using SEED=372761228191 as seed for Random +11645.064 ops/s +Iteration 1: 12759.097 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 43291.955 ops/s + 12759.097 ops/s # JMH version: 1.33 @@ -1223,15 +1904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=413593766971 as seed for Random -44509.749 ops/s -Iteration 1: 49561.701 ops/s +# Warmup Iteration 1: Using SEED=385901262790 as seed for Random +31587.713 ops/s +Iteration 1: 42945.730 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 49561.701 ops/s + 42945.730 ops/s # JMH version: 1.33 @@ -1246,15 +1927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=426431332058 as seed for Random -136882.738 ops/s -Iteration 1: 240069.743 ops/s +# Warmup Iteration 1: Using SEED=398929995131 as seed for Random +97438.493 ops/s +Iteration 1: 244814.628 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 240069.743 ops/s + 244814.628 ops/s # JMH version: 1.33 @@ -1269,15 +1950,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=439208401680 as seed for Random -73024.600 ops/s -Iteration 1: 133764.231 ops/s +# Warmup Iteration 1: Using SEED=412068251242 as seed for Random +21541.272 ops/s +Iteration 1: 37083.653 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 133764.231 ops/s + 37083.653 ops/s # JMH version: 1.33 @@ -1292,15 +1973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=451958021534 as seed for Random -281766.368 ops/s -Iteration 1: 367547.627 ops/s +# Warmup Iteration 1: Using SEED=425186530761 as seed for Random +201360.866 ops/s +Iteration 1: 282201.409 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 367547.627 ops/s + 282201.409 ops/s # JMH version: 1.33 @@ -1315,15 +1996,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:00:59 +# Run progress: 84.85% complete, ETA 00:01:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=464764866060 as seed for Random -348084.849 ops/s -Iteration 1: 409423.406 ops/s +# Warmup Iteration 1: Using SEED=438188887860 as seed for Random +218666.264 ops/s +Iteration 1: 281957.434 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 409423.406 ops/s + 281957.434 ops/s # JMH version: 1.33 @@ -1338,15 +2019,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=477557741971 as seed for Random -38266.900 ops/s -Iteration 1: 77144.147 ops/s +# Warmup Iteration 1: Using SEED=451256851225 as seed for Random +19727.894 ops/s +Iteration 1: 20022.129 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 77144.147 ops/s + 20022.129 ops/s # JMH version: 1.33 @@ -1363,13 +2044,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=490400144649 as seed for Random -90770.183 ops/s -Iteration 1: 124200.581 ops/s +# Warmup Iteration 1: Using SEED=464371847011 as seed for Random +37018.577 ops/s +Iteration 1: 76892.530 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 124200.581 ops/s + 76892.530 ops/s # JMH version: 1.33 @@ -1386,13 +2067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=503206444554 as seed for Random -18773.928 ops/s -Iteration 1: 44156.238 ops/s +# Warmup Iteration 1: Using SEED=477502890336 as seed for Random +12185.971 ops/s +Iteration 1: 26639.654 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 44156.238 ops/s + 26639.654 ops/s # JMH version: 1.33 @@ -1409,16 +2090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=516071436100 as seed for Random -106907.355 ops/s -Iteration 1: 175002.025 ops/s +# Warmup Iteration 1: Using SEED=490613462763 as seed for Random +60878.642 ops/s +Iteration 1: 105217.303 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 175002.025 ops/s + 105217.303 ops/s -# Run complete. Total time: 00:06:39 +# Run complete. Total time: 00:06:48 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1427,34 +2108,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 848648.412 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 650036.894 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 813867.165 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 778099.847 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 672737.135 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 1558.265 ops/s -c.g.f.j.databind.Serialization.genson thrpt 440335.618 ops/s -c.g.f.j.databind.Serialization.gson thrpt 217065.546 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 604343.381 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 587617.423 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 632059.579 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 54265.216 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 240660.833 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 352910.777 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 554933.211 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 322624.103 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 204110.071 ops/s -c.g.f.j.stream.Serialization.genson thrpt 353771.585 ops/s -c.g.f.j.stream.Serialization.gson thrpt 173365.040 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 593522.282 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 480183.139 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 43291.955 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 49561.701 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 240069.743 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 133764.231 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 367547.627 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 409423.406 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 77144.147 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 124200.581 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 44156.238 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 175002.025 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 552189.065 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 455731.176 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 679970.164 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 584038.113 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 553071.348 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 1307.719 ops/s +c.g.f.j.databind.Serialization.genson thrpt 273389.099 ops/s +c.g.f.j.databind.Serialization.gson thrpt 163499.770 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 472252.570 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 418097.369 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 412804.977 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 51486.839 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 159427.397 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 240520.758 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 434984.630 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 174194.689 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 157592.502 ops/s +c.g.f.j.stream.Serialization.genson thrpt 219611.116 ops/s +c.g.f.j.stream.Serialization.gson thrpt 117825.306 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 403279.551 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 344043.455 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 12759.097 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 42945.730 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 244814.628 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 37083.653 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 282201.409 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 281957.434 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 20022.129 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 76892.530 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 26639.654 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 105217.303 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt index a2fbcea..47c660a 100644 --- a/output/users-ser-1-10.txt +++ b/output/users-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=928615665800 as seed for Random -75372.433 ops/s -Iteration 1: 82938.252 ops/s +# Warmup Iteration 1: Using SEED=913528160967 as seed for Random +59250.380 ops/s +Iteration 1: 67172.794 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 82938.252 ops/s + 67172.794 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:50 +# Run progress: 3.03% complete, ETA 00:07:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=941388314581 as seed for Random -61576.702 ops/s -Iteration 1: 72072.501 ops/s +# Warmup Iteration 1: Using SEED=926688108262 as seed for Random +38093.873 ops/s +Iteration 1: 52326.883 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 72072.501 ops/s + 52326.883 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:38 +# Run progress: 6.06% complete, ETA 00:06:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=954298453562 as seed for Random +# Warmup Iteration 1: Using SEED=939817654123 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -141,8 +141,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -161,14 +160,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -216,8 +207,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -311,7 +301,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -330,6 +321,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -377,7 +376,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -406,15 +406,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:24 +# Run progress: 9.09% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=955001058874 as seed for Random -94740.213 ops/s -Iteration 1: 101489.957 ops/s +# Warmup Iteration 1: Using SEED=940787896780 as seed for Random +70714.922 ops/s +Iteration 1: 74094.071 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 101489.957 ops/s + 74094.071 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:44 +# Run progress: 12.12% complete, ETA 00:04:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=967782716767 as seed for Random -83585.708 ops/s -Iteration 1: 88646.354 ops/s +# Warmup Iteration 1: Using SEED=954007697198 as seed for Random +58278.077 ops/s +Iteration 1: 65635.006 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 88646.354 ops/s + 65635.006 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:51 +# Run progress: 15.15% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=980616410973 as seed for Random -35055.432 ops/s -Iteration 1: 67644.771 ops/s +# Warmup Iteration 1: Using SEED=967083433947 as seed for Random +24539.612 ops/s +Iteration 1: 39053.425 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 67644.771 ops/s + 39053.425 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:51 +# Run progress: 18.18% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=993427378898 as seed for Random -675.865 ops/s -Iteration 1: 420.385 ops/s +# Warmup Iteration 1: Using SEED=980144430626 as seed for Random +470.701 ops/s +Iteration 1: 313.901 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 420.385 ops/s + 313.901 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:48 +# Run progress: 21.21% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1006284163831 as seed for Random -54925.976 ops/s -Iteration 1: 63835.138 ops/s +# Warmup Iteration 1: Using SEED=993318437871 as seed for Random +32389.488 ops/s +Iteration 1: 42502.682 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 63835.138 ops/s + 42502.682 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:42 +# Run progress: 24.24% complete, ETA 00:04:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1019116555289 as seed for Random -17156.462 ops/s -Iteration 1: 22902.511 ops/s +# Warmup Iteration 1: Using SEED=1006407152358 as seed for Random +11214.086 ops/s +Iteration 1: 16842.919 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 22902.511 ops/s + 16842.919 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:35 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1031983700379 as seed for Random -69446.462 ops/s -Iteration 1: 77159.763 ops/s +# Warmup Iteration 1: Using SEED=1019523699068 as seed for Random +47601.635 ops/s +Iteration 1: 57082.824 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 77159.763 ops/s + 57082.824 ops/s # JMH version: 1.33 @@ -567,15 +567,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:27 +# Run progress: 30.30% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1044798398183 as seed for Random -65697.957 ops/s -Iteration 1: 73275.413 ops/s +# Warmup Iteration 1: Using SEED=1032640101201 as seed for Random +43437.156 ops/s +Iteration 1: 54374.433 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 73275.413 ops/s + 54374.433 ops/s # JMH version: 1.33 @@ -590,15 +590,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:18 +# Run progress: 33.33% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1057596922404 as seed for Random -64153.176 ops/s -Iteration 1: 75057.028 ops/s +# Warmup Iteration 1: Using SEED=1045716180920 as seed for Random +45854.039 ops/s +Iteration 1: 54079.898 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 75057.028 ops/s + 54079.898 ops/s # JMH version: 1.33 @@ -613,15 +613,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:08 +# Run progress: 36.36% complete, ETA 00:04:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1070418457504 as seed for Random -3965.532 ops/s -Iteration 1: 5906.722 ops/s +# Warmup Iteration 1: Using SEED=1058817276128 as seed for Random +3628.162 ops/s +Iteration 1: 5873.697 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 5906.722 ops/s + 5873.697 ops/s # JMH version: 1.33 @@ -636,15 +636,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:57 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1083206180889 as seed for Random -17231.662 ops/s -Iteration 1: 23718.058 ops/s +# Warmup Iteration 1: Using SEED=1071960360963 as seed for Random +12138.087 ops/s +Iteration 1: 20884.667 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 23718.058 ops/s + 20884.667 ops/s # JMH version: 1.33 @@ -659,12 +659,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1096009723667 as seed for Random +# Warmup Iteration 1: Using SEED=1085078238841 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -706,7 +706,8 @@ stream.writeVal((java.lang.String)e); at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -719,53 +720,25 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} + ... 37 more - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -782,53 +755,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -845,53 +774,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -908,53 +793,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -971,53 +812,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1034,58 +831,13 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1098,62 +850,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1170,53 +869,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1233,53 +888,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1296,53 +907,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1359,53 +926,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1422,53 +945,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1485,53 +964,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1548,53 +983,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1611,53 +1002,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1674,13 +1021,6 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more @@ -1697,15 +1037,15 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:21 +# Run progress: 45.45% complete, ETA 00:03:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1096795584472 as seed for Random -28498.161 ops/s -Iteration 1: 33529.383 ops/s +# Warmup Iteration 1: Using SEED=1087038780103 as seed for Random +18101.715 ops/s +Iteration 1: 21211.648 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 33529.383 ops/s + 21211.648 ops/s # JMH version: 1.33 @@ -1720,15 +1060,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:12 +# Run progress: 48.48% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1109616020066 as seed for Random -57511.120 ops/s -Iteration 1: 76343.834 ops/s +# Warmup Iteration 1: Using SEED=1100033049853 as seed for Random +31580.671 ops/s +Iteration 1: 52816.810 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 76343.834 ops/s + 52816.810 ops/s # JMH version: 1.33 @@ -1743,15 +1083,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:02 +# Run progress: 51.52% complete, ETA 00:03:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1122444915706 as seed for Random -32611.333 ops/s -Iteration 1: 38188.160 ops/s +# Warmup Iteration 1: Using SEED=1113202600494 as seed for Random +17245.479 ops/s +Iteration 1: 28833.470 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 38188.160 ops/s + 28833.470 ops/s # JMH version: 1.33 @@ -1766,15 +1106,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:52 +# Run progress: 54.55% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1135279960845 as seed for Random -20826.417 ops/s -Iteration 1: 29855.214 ops/s +# Warmup Iteration 1: Using SEED=1126300114696 as seed for Random +9751.065 ops/s +Iteration 1: 20490.950 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 29855.214 ops/s + 20490.950 ops/s # JMH version: 1.33 @@ -1789,15 +1129,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:41 +# Run progress: 57.58% complete, ETA 00:02:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1148076100427 as seed for Random -36712.847 ops/s -Iteration 1: 54404.040 ops/s +# Warmup Iteration 1: Using SEED=1139382141615 as seed for Random +20138.415 ops/s +Iteration 1: 35386.975 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 54404.040 ops/s + 35386.975 ops/s # JMH version: 1.33 @@ -1812,15 +1152,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1160946834511 as seed for Random -13501.535 ops/s -Iteration 1: 17423.928 ops/s +# Warmup Iteration 1: Using SEED=1152523008895 as seed for Random +7148.825 ops/s +Iteration 1: 10943.992 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 17423.928 ops/s + 10943.992 ops/s # JMH version: 1.33 @@ -1835,15 +1175,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1173799777726 as seed for Random -50736.201 ops/s -Iteration 1: 67003.023 ops/s +# Warmup Iteration 1: Using SEED=1165650557580 as seed for Random +30499.774 ops/s +Iteration 1: 53411.998 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 67003.023 ops/s + 53411.998 ops/s # JMH version: 1.33 @@ -1858,15 +1198,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1186648852156 as seed for Random -64142.887 ops/s -Iteration 1: 77863.721 ops/s +# Warmup Iteration 1: Using SEED=1178780525040 as seed for Random +41710.201 ops/s +Iteration 1: 59513.426 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 77863.721 ops/s + 59513.426 ops/s # JMH version: 1.33 @@ -1881,15 +1221,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:57 +# Run progress: 69.70% complete, ETA 00:02:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1199435010200 as seed for Random -2994.347 ops/s -Iteration 1: 5497.323 ops/s +# Warmup Iteration 1: Using SEED=1191927240228 as seed for Random +1311.687 ops/s +Iteration 1: 4914.454 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 5497.323 ops/s + 4914.454 ops/s # JMH version: 1.33 @@ -1904,15 +1244,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1212284574074 as seed for Random -4302.468 ops/s -Iteration 1: 5124.982 ops/s +# Warmup Iteration 1: Using SEED=1205059887940 as seed for Random +1844.938 ops/s +Iteration 1: 4292.226 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 5124.982 ops/s + 4292.226 ops/s # JMH version: 1.33 @@ -1927,15 +1267,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:34 +# Run progress: 75.76% complete, ETA 00:01:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1225063038013 as seed for Random -22727.482 ops/s -Iteration 1: 41103.073 ops/s +# Warmup Iteration 1: Using SEED=1218149192965 as seed for Random +7343.347 ops/s +Iteration 1: 23540.167 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 41103.073 ops/s + 23540.167 ops/s # JMH version: 1.33 @@ -1950,15 +1290,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1237875819997 as seed for Random -5946.713 ops/s -Iteration 1: 12712.642 ops/s +# Warmup Iteration 1: Using SEED=1231334291041 as seed for Random +2879.865 ops/s +Iteration 1: 4284.349 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 12712.642 ops/s + 4284.349 ops/s # JMH version: 1.33 @@ -1973,15 +1313,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1250746472839 as seed for Random -22086.824 ops/s -Iteration 1: 38750.699 ops/s +# Warmup Iteration 1: Using SEED=1244433654353 as seed for Random +17266.436 ops/s +Iteration 1: 29617.463 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 38750.699 ops/s + 29617.463 ops/s # JMH version: 1.33 @@ -1996,15 +1336,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:00:59 +# Run progress: 84.85% complete, ETA 00:01:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1263538205778 as seed for Random -44060.462 ops/s -Iteration 1: 50897.380 ops/s +# Warmup Iteration 1: Using SEED=1257622411269 as seed for Random +18995.488 ops/s +Iteration 1: 22902.790 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 50897.380 ops/s + 22902.790 ops/s # JMH version: 1.33 @@ -2019,15 +1359,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:47 +# Run progress: 87.88% complete, ETA 00:00:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1276356800254 as seed for Random -2611.387 ops/s -Iteration 1: 2918.275 ops/s +# Warmup Iteration 1: Using SEED=1270802771391 as seed for Random +2555.126 ops/s +Iteration 1: 5123.611 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 2918.275 ops/s + 5123.611 ops/s # JMH version: 1.33 @@ -2042,15 +1382,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1289212018827 as seed for Random -6955.513 ops/s -Iteration 1: 10827.237 ops/s +# Warmup Iteration 1: Using SEED=1283972494883 as seed for Random +4194.508 ops/s +Iteration 1: 7275.603 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 10827.237 ops/s + 7275.603 ops/s # JMH version: 1.33 @@ -2067,13 +1407,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1302061519660 as seed for Random -3024.218 ops/s -Iteration 1: 4976.389 ops/s +# Warmup Iteration 1: Using SEED=1297036174555 as seed for Random +1423.935 ops/s +Iteration 1: 1817.877 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 4976.389 ops/s + 1817.877 ops/s # JMH version: 1.33 @@ -2090,16 +1430,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1314968206989 as seed for Random -10021.826 ops/s -Iteration 1: 15098.258 ops/s +# Warmup Iteration 1: Using SEED=1310161206664 as seed for Random +6051.081 ops/s +Iteration 1: 9738.842 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 15098.258 ops/s + 9738.842 ops/s -# Run complete. Total time: 00:06:39 +# Run complete. Total time: 00:06:49 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2107,35 +1447,35 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 82938.252 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 72072.501 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 101489.957 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 88646.354 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 67644.771 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 420.385 ops/s -c.g.f.j.databind.Serialization.genson thrpt 63835.138 ops/s -c.g.f.j.databind.Serialization.gson thrpt 22902.511 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 77159.763 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 73275.413 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 75057.028 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 5906.722 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 23718.058 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 33529.383 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 76343.834 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 38188.160 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 29855.214 ops/s -c.g.f.j.stream.Serialization.genson thrpt 54404.040 ops/s -c.g.f.j.stream.Serialization.gson thrpt 17423.928 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 67003.023 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 77863.721 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 5497.323 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 5124.982 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 41103.073 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 12712.642 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 38750.699 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 50897.380 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 2918.275 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 10827.237 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 4976.389 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 15098.258 ops/s +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 67172.794 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 52326.883 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 74094.071 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 65635.006 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 39053.425 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 313.901 ops/s +c.g.f.j.databind.Serialization.genson thrpt 42502.682 ops/s +c.g.f.j.databind.Serialization.gson thrpt 16842.919 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 57082.824 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 54374.433 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 54079.898 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 5873.697 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 20884.667 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 21211.648 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 52816.810 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 28833.470 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 20490.950 ops/s +c.g.f.j.stream.Serialization.genson thrpt 35386.975 ops/s +c.g.f.j.stream.Serialization.gson thrpt 10943.992 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 53411.998 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 59513.426 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 4914.454 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 4292.226 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 23540.167 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 4284.349 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 29617.463 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 22902.790 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 5123.611 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 7275.603 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 1817.877 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 9738.842 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt index 492c8bb..261131f 100644 --- a/output/users-ser-1-100.txt +++ b/output/users-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1729048314578 as seed for Random -7730.030 ops/s -Iteration 1: 8490.228 ops/s +# Warmup Iteration 1: Using SEED=1735153229569 as seed for Random +5866.743 ops/s +Iteration 1: 6791.925 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 8490.228 ops/s + 6791.925 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:53 +# Run progress: 3.03% complete, ETA 00:07:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1741939837506 as seed for Random -6666.539 ops/s -Iteration 1: 7747.152 ops/s +# Warmup Iteration 1: Using SEED=1748347142780 as seed for Random +4698.479 ops/s +Iteration 1: 5859.197 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 7747.152 ops/s + 5859.197 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:39 +# Run progress: 6.06% complete, ETA 00:06:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1754789471045 as seed for Random +# Warmup Iteration 1: Using SEED=1761418354669 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -107,8 +107,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -142,8 +141,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -162,14 +160,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -357,7 +347,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -371,7 +362,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -390,6 +382,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more @@ -406,15 +406,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:25 +# Run progress: 9.09% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1755535350578 as seed for Random -8719.589 ops/s -Iteration 1: 9597.384 ops/s +# Warmup Iteration 1: Using SEED=1762392138324 as seed for Random +6467.899 ops/s +Iteration 1: 7799.696 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 9597.384 ops/s + 7799.696 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:45 +# Run progress: 12.12% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1768356124020 as seed for Random -9199.086 ops/s -Iteration 1: 9198.173 ops/s +# Warmup Iteration 1: Using SEED=1775542339710 as seed for Random +6736.753 ops/s +Iteration 1: 7059.481 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 9198.173 ops/s + 7059.481 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:52 +# Run progress: 15.15% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1781203346298 as seed for Random -2507.693 ops/s -Iteration 1: 3339.815 ops/s +# Warmup Iteration 1: Using SEED=1788695836529 as seed for Random +1896.302 ops/s +Iteration 1: 2886.763 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 3339.815 ops/s + 2886.763 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:52 +# Run progress: 18.18% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1794055336273 as seed for Random -171.183 ops/s -Iteration 1: 128.951 ops/s +# Warmup Iteration 1: Using SEED=1801804750722 as seed for Random +86.685 ops/s +Iteration 1: 94.398 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 128.951 ops/s + 94.398 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:50 +# Run progress: 21.21% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1807265920509 as seed for Random -5139.264 ops/s -Iteration 1: 6066.236 ops/s +# Warmup Iteration 1: Using SEED=1815325130179 as seed for Random +3612.132 ops/s +Iteration 1: 4439.506 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 6066.236 ops/s + 4439.506 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:44 +# Run progress: 24.24% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1820174295569 as seed for Random -1968.696 ops/s -Iteration 1: 2454.146 ops/s +# Warmup Iteration 1: Using SEED=1828515351911 as seed for Random +1249.056 ops/s +Iteration 1: 1607.700 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 2454.146 ops/s + 1607.700 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:37 +# Run progress: 27.27% complete, ETA 00:04:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1833085823682 as seed for Random -6727.210 ops/s -Iteration 1: 7983.638 ops/s +# Warmup Iteration 1: Using SEED=1841708813361 as seed for Random +4982.651 ops/s +Iteration 1: 5581.785 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 7983.638 ops/s + 5581.785 ops/s # JMH version: 1.33 @@ -567,15 +567,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:29 +# Run progress: 30.30% complete, ETA 00:04:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1845989140738 as seed for Random -6481.602 ops/s -Iteration 1: 7297.183 ops/s +# Warmup Iteration 1: Using SEED=1854805918534 as seed for Random +4037.598 ops/s +Iteration 1: 5042.288 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 7297.183 ops/s + 5042.288 ops/s # JMH version: 1.33 @@ -590,15 +590,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:19 +# Run progress: 33.33% complete, ETA 00:04:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1858813627917 as seed for Random -6298.397 ops/s -Iteration 1: 7255.259 ops/s +# Warmup Iteration 1: Using SEED=1867936933850 as seed for Random +4885.869 ops/s +Iteration 1: 5710.241 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 7255.259 ops/s + 5710.241 ops/s # JMH version: 1.33 @@ -613,15 +613,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:09 +# Run progress: 36.36% complete, ETA 00:04:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1871639749441 as seed for Random -529.383 ops/s -Iteration 1: 586.984 ops/s +# Warmup Iteration 1: Using SEED=1881033521941 as seed for Random +452.291 ops/s +Iteration 1: 566.873 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 586.984 ops/s + 566.873 ops/s # JMH version: 1.33 @@ -636,15 +636,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:59 +# Run progress: 39.39% complete, ETA 00:04:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1884479628466 as seed for Random -1802.342 ops/s -Iteration 1: 2263.917 ops/s +# Warmup Iteration 1: Using SEED=1894176230822 as seed for Random +1352.170 ops/s +Iteration 1: 1937.029 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 2263.917 ops/s + 1937.029 ops/s # JMH version: 1.33 @@ -659,12 +659,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:48 +# Run progress: 42.42% complete, ETA 00:03:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1897287597114 as seed for Random +# Warmup Iteration 1: Using SEED=1907370995229 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -719,25 +719,53 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -754,9 +782,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -773,6 +845,22 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) @@ -950,7 +1038,8 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1007,8 +1096,7 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1037,15 +1125,15 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:23 +# Run progress: 45.45% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1898976019327 as seed for Random -1742.160 ops/s -Iteration 1: 1985.808 ops/s +# Warmup Iteration 1: Using SEED=1909391329367 as seed for Random +1397.144 ops/s +Iteration 1: 1776.154 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 1985.808 ops/s + 1776.154 ops/s # JMH version: 1.33 @@ -1060,15 +1148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:14 +# Run progress: 48.48% complete, ETA 00:03:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1911787046829 as seed for Random -4691.856 ops/s -Iteration 1: 7024.208 ops/s +# Warmup Iteration 1: Using SEED=1922512626015 as seed for Random +2382.614 ops/s +Iteration 1: 5267.814 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 7024.208 ops/s + 5267.814 ops/s # JMH version: 1.33 @@ -1083,15 +1171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:04 +# Run progress: 51.52% complete, ETA 00:03:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1924610070094 as seed for Random -2814.045 ops/s -Iteration 1: 3589.359 ops/s +# Warmup Iteration 1: Using SEED=1935638206478 as seed for Random +1944.938 ops/s +Iteration 1: 2720.322 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 3589.359 ops/s + 2720.322 ops/s # JMH version: 1.33 @@ -1106,15 +1194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:53 +# Run progress: 54.55% complete, ETA 00:02:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1937445311555 as seed for Random -1746.557 ops/s -Iteration 1: 2918.649 ops/s +# Warmup Iteration 1: Using SEED=1948804966702 as seed for Random +1102.402 ops/s +Iteration 1: 2138.322 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 2918.649 ops/s + 2138.322 ops/s # JMH version: 1.33 @@ -1129,15 +1217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:43 +# Run progress: 57.58% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1950256446434 as seed for Random -4347.686 ops/s -Iteration 1: 6017.528 ops/s +# Warmup Iteration 1: Using SEED=1961965308572 as seed for Random +2343.192 ops/s +Iteration 1: 3777.333 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 6017.528 ops/s + 3777.333 ops/s # JMH version: 1.33 @@ -1152,15 +1240,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:32 +# Run progress: 60.61% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1963069631060 as seed for Random -1134.523 ops/s -Iteration 1: 1538.539 ops/s +# Warmup Iteration 1: Using SEED=1975197300839 as seed for Random +443.942 ops/s +Iteration 1: 1050.019 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 1538.539 ops/s + 1050.019 ops/s # JMH version: 1.33 @@ -1175,15 +1263,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:21 +# Run progress: 63.64% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1975874314581 as seed for Random -5577.598 ops/s -Iteration 1: 6672.714 ops/s +# Warmup Iteration 1: Using SEED=1988336653083 as seed for Random +3182.656 ops/s +Iteration 1: 5465.754 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 6672.714 ops/s + 5465.754 ops/s # JMH version: 1.33 @@ -1198,15 +1286,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1988697734907 as seed for Random -5247.414 ops/s -Iteration 1: 7430.126 ops/s +# Warmup Iteration 1: Using SEED=2001413376493 as seed for Random +3337.922 ops/s +Iteration 1: 5768.823 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 7430.126 ops/s + 5768.823 ops/s # JMH version: 1.33 @@ -1221,15 +1309,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2001614007038 as seed for Random -253.920 ops/s -Iteration 1: 543.946 ops/s +# Warmup Iteration 1: Using SEED=2014669585116 as seed for Random +379.399 ops/s +Iteration 1: 523.366 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 543.946 ops/s + 523.366 ops/s # JMH version: 1.33 @@ -1244,15 +1332,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:47 +# Run progress: 72.73% complete, ETA 00:01:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2014464634267 as seed for Random -406.368 ops/s -Iteration 1: 506.076 ops/s +# Warmup Iteration 1: Using SEED=2027882136157 as seed for Random +263.249 ops/s +Iteration 1: 555.488 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 506.076 ops/s + 555.488 ops/s # JMH version: 1.33 @@ -1267,15 +1355,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2027408292170 as seed for Random -1664.464 ops/s -Iteration 1: 2637.500 ops/s +# Warmup Iteration 1: Using SEED=2041023226879 as seed for Random +1044.741 ops/s +Iteration 1: 2098.230 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 2637.500 ops/s + 2098.230 ops/s # JMH version: 1.33 @@ -1290,15 +1378,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2040256738456 as seed for Random -715.325 ops/s -Iteration 1: 1166.771 ops/s +# Warmup Iteration 1: Using SEED=2054142266907 as seed for Random +329.621 ops/s +Iteration 1: 786.623 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 1166.771 ops/s + 786.623 ops/s # JMH version: 1.33 @@ -1313,15 +1401,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:12 +# Run progress: 81.82% complete, ETA 00:01:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2053127945624 as seed for Random -2089.041 ops/s -Iteration 1: 3883.982 ops/s +# Warmup Iteration 1: Using SEED=2067400028914 as seed for Random +667.329 ops/s +Iteration 1: 2885.839 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 3883.982 ops/s + 2885.839 ops/s # JMH version: 1.33 @@ -1336,15 +1424,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:00 +# Run progress: 84.85% complete, ETA 00:01:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2065947100833 as seed for Random -2178.778 ops/s -Iteration 1: 2390.270 ops/s +# Warmup Iteration 1: Using SEED=2080506582819 as seed for Random +1916.157 ops/s +Iteration 1: 2285.806 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 2390.270 ops/s + 2285.806 ops/s # JMH version: 1.33 @@ -1359,15 +1447,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2078751842412 as seed for Random -615.235 ops/s -Iteration 1: 778.566 ops/s +# Warmup Iteration 1: Using SEED=2093587177055 as seed for Random +359.608 ops/s +Iteration 1: 703.150 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 778.566 ops/s + 703.150 ops/s # JMH version: 1.33 @@ -1382,15 +1470,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2091630638033 as seed for Random -587.657 ops/s -Iteration 1: 891.647 ops/s +# Warmup Iteration 1: Using SEED=2106772084159 as seed for Random +331.836 ops/s +Iteration 1: 538.773 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 891.647 ops/s + 538.773 ops/s # JMH version: 1.33 @@ -1407,13 +1495,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2104482544220 as seed for Random -319.067 ops/s -Iteration 1: 462.515 ops/s +# Warmup Iteration 1: Using SEED=2119923569120 as seed for Random +154.487 ops/s +Iteration 1: 415.838 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 462.515 ops/s + 415.838 ops/s # JMH version: 1.33 @@ -1430,16 +1518,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2117379051643 as seed for Random -845.592 ops/s -Iteration 1: 1262.940 ops/s +# Warmup Iteration 1: Using SEED=2133291956254 as seed for Random +648.425 ops/s +Iteration 1: 893.210 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 1262.940 ops/s + 893.210 ops/s -# Run complete. Total time: 00:06:41 +# Run complete. Total time: 00:06:51 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1448,34 +1536,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 8490.228 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 7747.152 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 9597.384 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 9198.173 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 3339.815 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 128.951 ops/s -c.g.f.j.databind.Serialization.genson thrpt 6066.236 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2454.146 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 7983.638 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 7297.183 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 7255.259 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 586.984 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 2263.917 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 1985.808 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 7024.208 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 3589.359 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2918.649 ops/s -c.g.f.j.stream.Serialization.genson thrpt 6017.528 ops/s -c.g.f.j.stream.Serialization.gson thrpt 1538.539 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 6672.714 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 7430.126 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 543.946 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 506.076 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2637.500 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 1166.771 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 3883.982 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 2390.270 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 778.566 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 891.647 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 462.515 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 1262.940 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 6791.925 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 5859.197 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 7799.696 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 7059.481 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 2886.763 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 94.398 ops/s +c.g.f.j.databind.Serialization.genson thrpt 4439.506 ops/s +c.g.f.j.databind.Serialization.gson thrpt 1607.700 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 5581.785 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 5042.288 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 5710.241 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 566.873 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 1937.029 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 1776.154 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 5267.814 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 2720.322 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2138.322 ops/s +c.g.f.j.stream.Serialization.genson thrpt 3777.333 ops/s +c.g.f.j.stream.Serialization.gson thrpt 1050.019 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 5465.754 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 5768.823 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 523.366 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 555.488 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2098.230 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 786.623 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 2885.839 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 2285.806 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 703.150 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 538.773 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 415.838 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 893.210 ops/s From ad178efd8bfd6a72abde8d04084163317e247660 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 23 Oct 2022 21:41:42 +0100 Subject: [PATCH 15/42] #53 commiting back results --- .github/workflows/gradle.yml | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 7cab560..a3e5463 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -7,11 +7,7 @@ name: Java CI with Gradle -on: - push: - branches: [ "master" ] - pull_request: - branches: [ "master" ] +on: [push, pull_request] permissions: contents: read @@ -39,7 +35,4 @@ jobs: ./toMd.sh ../index.md - uses: stefanzweifel/git-auto-commit-action@v4 with: - commit_message: result adding back to repo - contents: write - push_options: --force - #test2 \ No newline at end of file + commit_message: result adding back to repo [skip ci] \ No newline at end of file From 3aa821668cf619aeb3025b1937fd23af07990245 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 23 Oct 2022 21:47:11 +0100 Subject: [PATCH 16/42] #53 commiting back results --- .github/workflows/gradle.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index a3e5463..f42e37a 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -35,4 +35,4 @@ jobs: ./toMd.sh ../index.md - uses: stefanzweifel/git-auto-commit-action@v4 with: - commit_message: result adding back to repo [skip ci] \ No newline at end of file + commit_message: result adding back to repo [skip ci] another test \ No newline at end of file From d19943147ff7cf6a78d10ab4eab11413b162c657 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 23 Oct 2022 21:46:32 +0000 Subject: [PATCH 17/42] result adding back to repo [skip ci] another test --- output/clients-deser-1-1.txt | 1440 ++++----------------------- output/clients-deser-1-10.txt | 1561 ++++------------------------- output/clients-deser-1-100.txt | 1396 +++++++++++++++++++++++--- output/clients-ser-1-1.txt | 168 ++-- output/clients-ser-1-10.txt | 242 ++--- output/clients-ser-1-100.txt | 704 ++++++++++--- output/users-deser-1-1.txt | 1693 ++++++-------------------------- output/users-deser-1-10.txt | 450 ++++----- output/users-deser-1-100.txt | 1598 ++++++------------------------ output/users-ser-1-1.txt | 1188 +++++----------------- output/users-ser-1-10.txt | 1192 +++++++++++++++++----- output/users-ser-1-100.txt | 1179 ++++++++++++++++------ 12 files changed, 5224 insertions(+), 7587 deletions(-) diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt index 8876139..61f3bfa 100644 --- a/output/clients-deser-1-1.txt +++ b/output/clients-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2747407290803 as seed for Random -49799.243 ops/s -Iteration 1: 69813.132 ops/s +# Warmup Iteration 1: Using SEED=2767535224634 as seed for Random +253349.183 ops/s +Iteration 1: 406116.884 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 69813.132 ops/s + 406116.884 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:05 +# Run progress: 6.67% complete, ETA 00:03:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2760629949598 as seed for Random -66072.085 ops/s -Iteration 1: 115353.853 ops/s +# Warmup Iteration 1: Using SEED=2780448385667 as seed for Random +113763.721 ops/s +Iteration 1: 217373.656 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 115353.853 ops/s + 217373.656 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:52 +# Run progress: 13.33% complete, ETA 00:02:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2773893175130 as seed for Random -147274.456 ops/s -Iteration 1: 526744.581 ops/s +# Warmup Iteration 1: Using SEED=2793433008601 as seed for Random +405623.616 ops/s +Iteration 1: 614456.313 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 526744.581 ops/s + 614456.313 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2787076306606 as seed for Random -238388.177 ops/s -Iteration 1: 329874.807 ops/s +# Warmup Iteration 1: Using SEED=2806373610588 as seed for Random +246775.171 ops/s +Iteration 1: 325168.137 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 329874.807 ops/s + 325168.137 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2800217222783 as seed for Random -15168.572 ops/s -Iteration 1: 17519.893 ops/s +# Warmup Iteration 1: Using SEED=2819237391905 as seed for Random +20732.534 ops/s +Iteration 1: 71985.707 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 17519.893 ops/s + 71985.707 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2813391954447 as seed for Random -8617.082 ops/s -Iteration 1: 15353.786 ops/s +# Warmup Iteration 1: Using SEED=2832105703868 as seed for Random +15152.350 ops/s +Iteration 1: 34063.045 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 15353.786 ops/s + 34063.045 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:58 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2826621546799 as seed for Random -69826.799 ops/s -Iteration 1: 147872.927 ops/s +# Warmup Iteration 1: Using SEED=2844989139766 as seed for Random +119667.424 ops/s +Iteration 1: 209308.805 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 147872.927 ops/s + 209308.805 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2839809569500 as seed for Random -66673.444 ops/s -Iteration 1: 137969.430 ops/s +# Warmup Iteration 1: Using SEED=2857853662572 as seed for Random +63436.907 ops/s +Iteration 1: 123923.687 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 137969.430 ops/s + 123923.687 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2852959031476 as seed for Random -32423.169 ops/s -Iteration 1: 76207.497 ops/s +# Warmup Iteration 1: Using SEED=2870698354946 as seed for Random +170048.120 ops/s +Iteration 1: 297488.475 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 76207.497 ops/s + 297488.475 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2866160789095 as seed for Random -44130.257 ops/s -Iteration 1: 73813.363 ops/s +# Warmup Iteration 1: Using SEED=2883561092866 as seed for Random +216400.767 ops/s +Iteration 1: 324661.961 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 73813.363 ops/s + 324661.961 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:05 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2879352113389 as seed for Random -95723.594 ops/s -Iteration 1: 205702.687 ops/s +# Warmup Iteration 1: Using SEED=2896430878426 as seed for Random +232611.935 ops/s +Iteration 1: 342319.021 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 205702.687 ops/s + 342319.021 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2892494819823 as seed for Random -52044.958 ops/s -Iteration 1: 131520.888 ops/s +# Warmup Iteration 1: Using SEED=2909312001452 as seed for Random +63325.101 ops/s +Iteration 1: 128325.795 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 131520.888 ops/s + 128325.795 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2905623148697 as seed for Random +# Warmup Iteration 1: Using SEED=2922139166558 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2e0363ba with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@29584b66 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -380,86 +380,25 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6494cd2 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -477,95 +416,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e9b8a25 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -583,86 +436,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5336fc0d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -680,377 +456,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1f225368 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3d5e9c18 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@330c38ab with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1068,86 +476,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@15620d39 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1165,86 +496,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3aaeb282 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1262,86 +516,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7f319177 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1359,86 +536,49 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@39387b92 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1456,86 +596,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@503a20d7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1553,86 +616,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@30443ace with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1650,86 +636,29 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@675a21a1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1747,13 +676,6 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null at com.jsoniter.Codegen$1.decode(Codegen.java:115) @@ -1793,13 +715,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2907677591915 as seed for Random -27723.322 ops/s -Iteration 1: 47203.930 ops/s +# Warmup Iteration 1: Using SEED=2923865207789 as seed for Random +45973.636 ops/s +Iteration 1: 91784.861 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 47203.930 ops/s + 91784.861 ops/s # JMH version: 1.33 @@ -1816,16 +738,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2920827659430 as seed for Random -35168.615 ops/s -Iteration 1: 57692.797 ops/s +# Warmup Iteration 1: Using SEED=2936687853059 as seed for Random +83704.955 ops/s +Iteration 1: 159232.897 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 57692.797 ops/s + 159232.897 ops/s -# Run complete. Total time: 00:03:06 +# Run complete. Total time: 00:03:02 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1834,17 +756,17 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 69813.132 ops/s -Deserialization.avajejsonb_jackson thrpt 115353.853 ops/s -Deserialization.dsljson thrpt 526744.581 ops/s -Deserialization.dsljson_reflection thrpt 329874.807 ops/s -Deserialization.fastjson thrpt 17519.893 ops/s -Deserialization.flexjson thrpt 15353.786 ops/s -Deserialization.genson thrpt 147872.927 ops/s -Deserialization.gson thrpt 137969.430 ops/s -Deserialization.jackson thrpt 76207.497 ops/s -Deserialization.jackson_afterburner thrpt 73813.363 ops/s -Deserialization.jackson_blackbird thrpt 205702.687 ops/s -Deserialization.jodd thrpt 131520.888 ops/s -Deserialization.logansquare thrpt 47203.930 ops/s -Deserialization.moshi thrpt 57692.797 ops/s +Deserialization.avajejsonb thrpt 406116.884 ops/s +Deserialization.avajejsonb_jackson thrpt 217373.656 ops/s +Deserialization.dsljson thrpt 614456.313 ops/s +Deserialization.dsljson_reflection thrpt 325168.137 ops/s +Deserialization.fastjson thrpt 71985.707 ops/s +Deserialization.flexjson thrpt 34063.045 ops/s +Deserialization.genson thrpt 209308.805 ops/s +Deserialization.gson thrpt 123923.687 ops/s +Deserialization.jackson thrpt 297488.475 ops/s +Deserialization.jackson_afterburner thrpt 324661.961 ops/s +Deserialization.jackson_blackbird thrpt 342319.021 ops/s +Deserialization.jodd thrpt 128325.795 ops/s +Deserialization.logansquare thrpt 91784.861 ops/s +Deserialization.moshi thrpt 159232.897 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt index 8198ef0..8a93766 100644 --- a/output/clients-deser-1-10.txt +++ b/output/clients-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3122158819438 as seed for Random -3158.191 ops/s -Iteration 1: 8500.142 ops/s +# Warmup Iteration 1: Using SEED=3132884858889 as seed for Random +7295.599 ops/s +Iteration 1: 15753.575 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 8500.142 ops/s + 15753.575 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:05 +# Run progress: 6.67% complete, ETA 00:03:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3135378559084 as seed for Random -1626.889 ops/s -Iteration 1: 3196.850 ops/s +# Warmup Iteration 1: Using SEED=3145738486409 as seed for Random +4692.281 ops/s +Iteration 1: 9336.740 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 3196.850 ops/s + 9336.740 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:52 +# Run progress: 13.33% complete, ETA 00:02:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3148600692583 as seed for Random -27417.431 ops/s -Iteration 1: 50690.447 ops/s +# Warmup Iteration 1: Using SEED=3158673350272 as seed for Random +42526.104 ops/s +Iteration 1: 69967.641 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 50690.447 ops/s + 69967.641 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3161827592866 as seed for Random -26218.435 ops/s -Iteration 1: 42855.089 ops/s +# Warmup Iteration 1: Using SEED=3171562817870 as seed for Random +38103.740 ops/s +Iteration 1: 54420.795 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 42855.089 ops/s + 54420.795 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3174974360318 as seed for Random -2151.332 ops/s -Iteration 1: 4026.212 ops/s +# Warmup Iteration 1: Using SEED=3184455503165 as seed for Random +3208.177 ops/s +Iteration 1: 7248.444 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 4026.212 ops/s + 7248.444 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3188138507480 as seed for Random -829.126 ops/s -Iteration 1: 1439.665 ops/s +# Warmup Iteration 1: Using SEED=3197345701020 as seed for Random +1388.749 ops/s +Iteration 1: 2216.154 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 1439.665 ops/s + 2216.154 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:58 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3201342189357 as seed for Random -2130.977 ops/s -Iteration 1: 3783.298 ops/s +# Warmup Iteration 1: Using SEED=3210294432792 as seed for Random +4789.333 ops/s +Iteration 1: 10976.255 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 3783.298 ops/s + 10976.255 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3214508847406 as seed for Random -2892.629 ops/s -Iteration 1: 4793.595 ops/s +# Warmup Iteration 1: Using SEED=3223162281675 as seed for Random +4079.466 ops/s +Iteration 1: 9568.063 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 4793.595 ops/s + 9568.063 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3227723688459 as seed for Random -1780.706 ops/s -Iteration 1: 3615.817 ops/s +# Warmup Iteration 1: Using SEED=3236024087836 as seed for Random +3684.635 ops/s +Iteration 1: 5430.615 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 3615.817 ops/s + 5430.615 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3240860200380 as seed for Random -2719.655 ops/s -Iteration 1: 4067.186 ops/s +# Warmup Iteration 1: Using SEED=3248899009541 as seed for Random +4710.848 ops/s +Iteration 1: 7289.010 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 4067.186 ops/s + 7289.010 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:05 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3254020844765 as seed for Random -2330.727 ops/s -Iteration 1: 3872.554 ops/s +# Warmup Iteration 1: Using SEED=3261762458737 as seed for Random +4064.074 ops/s +Iteration 1: 7619.386 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 3872.554 ops/s + 7619.386 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3267195100470 as seed for Random -1957.962 ops/s -Iteration 1: 4557.626 ops/s +# Warmup Iteration 1: Using SEED=3274637267184 as seed for Random +4234.921 ops/s +Iteration 1: 10246.380 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 4557.626 ops/s + 10246.380 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3280408679103 as seed for Random +# Warmup Iteration 1: Using SEED=3287502846342 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@39bf78f6 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6494cd2 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -367,8 +367,7 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -381,86 +380,25 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 51 more + ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1161fa3d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -478,86 +416,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7871bf3 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -575,95 +436,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4799f844 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -681,377 +456,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1e361f6d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2274cf90 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@495dbfcc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@57094200 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1069,183 +476,29 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3d7ca875 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@47e538f8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1263,86 +516,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4d14336f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1360,86 +536,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3edfae2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1457,86 +556,49 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@23a08da8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1554,86 +616,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1ef424b8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1651,86 +636,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6296cfa5 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1748,86 +656,30 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6462d4d2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1845,13 +697,6 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more @@ -1870,13 +715,13 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3281563468380 as seed for Random -1820.649 ops/s -Iteration 1: 2210.200 ops/s +# Warmup Iteration 1: Using SEED=3289250553034 as seed for Random +4966.421 ops/s +Iteration 1: 9895.885 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 2210.200 ops/s + 9895.885 ops/s # JMH version: 1.33 @@ -1893,16 +738,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3294776533195 as seed for Random -2287.294 ops/s -Iteration 1: 4215.180 ops/s +# Warmup Iteration 1: Using SEED=3302116638682 as seed for Random +5950.318 ops/s +Iteration 1: 12027.477 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 4215.180 ops/s + 12027.477 ops/s -# Run complete. Total time: 00:03:05 +# Run complete. Total time: 00:03:02 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1911,17 +756,17 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 8500.142 ops/s -Deserialization.avajejsonb_jackson thrpt 3196.850 ops/s -Deserialization.dsljson thrpt 50690.447 ops/s -Deserialization.dsljson_reflection thrpt 42855.089 ops/s -Deserialization.fastjson thrpt 4026.212 ops/s -Deserialization.flexjson thrpt 1439.665 ops/s -Deserialization.genson thrpt 3783.298 ops/s -Deserialization.gson thrpt 4793.595 ops/s -Deserialization.jackson thrpt 3615.817 ops/s -Deserialization.jackson_afterburner thrpt 4067.186 ops/s -Deserialization.jackson_blackbird thrpt 3872.554 ops/s -Deserialization.jodd thrpt 4557.626 ops/s -Deserialization.logansquare thrpt 2210.200 ops/s -Deserialization.moshi thrpt 4215.180 ops/s +Deserialization.avajejsonb thrpt 15753.575 ops/s +Deserialization.avajejsonb_jackson thrpt 9336.740 ops/s +Deserialization.dsljson thrpt 69967.641 ops/s +Deserialization.dsljson_reflection thrpt 54420.795 ops/s +Deserialization.fastjson thrpt 7248.444 ops/s +Deserialization.flexjson thrpt 2216.154 ops/s +Deserialization.genson thrpt 10976.255 ops/s +Deserialization.gson thrpt 9568.063 ops/s +Deserialization.jackson thrpt 5430.615 ops/s +Deserialization.jackson_afterburner thrpt 7289.010 ops/s +Deserialization.jackson_blackbird thrpt 7619.386 ops/s +Deserialization.jodd thrpt 10246.380 ops/s +Deserialization.logansquare thrpt 9895.885 ops/s +Deserialization.moshi thrpt 12027.477 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt index 2ca5bd0..cdca852 100644 --- a/output/clients-deser-1-100.txt +++ b/output/clients-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3496872176853 as seed for Random -341.232 ops/s -Iteration 1: 854.563 ops/s +# Warmup Iteration 1: Using SEED=3498864559387 as seed for Random +693.086 ops/s +Iteration 1: 1328.956 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 854.563 ops/s + 1328.956 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:08 +# Run progress: 6.67% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3510218142735 as seed for Random -259.907 ops/s -Iteration 1: 632.799 ops/s +# Warmup Iteration 1: Using SEED=3511935847892 as seed for Random +479.693 ops/s +Iteration 1: 1098.517 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 632.799 ops/s + 1098.517 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:53 +# Run progress: 13.33% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3523518970897 as seed for Random -2237.874 ops/s -Iteration 1: 5438.048 ops/s +# Warmup Iteration 1: Using SEED=3524908299332 as seed for Random +4471.127 ops/s +Iteration 1: 6948.318 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 5438.048 ops/s + 6948.318 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:39 +# Run progress: 20.00% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3536749490269 as seed for Random -2876.198 ops/s -Iteration 1: 4453.816 ops/s +# Warmup Iteration 1: Using SEED=3537899550259 as seed for Random +4282.248 ops/s +Iteration 1: 5629.881 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 4453.816 ops/s + 5629.881 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:26 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3549988098425 as seed for Random -238.506 ops/s -Iteration 1: 449.212 ops/s +# Warmup Iteration 1: Using SEED=3550812448824 as seed for Random +459.723 ops/s +Iteration 1: 704.168 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 449.212 ops/s + 704.168 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3563225182498 as seed for Random -74.640 ops/s -Iteration 1: 81.691 ops/s +# Warmup Iteration 1: Using SEED=3563759574158 as seed for Random +155.710 ops/s +Iteration 1: 241.988 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 81.691 ops/s + 241.988 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:02:00 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3576994343748 as seed for Random -300.931 ops/s -Iteration 1: 818.449 ops/s +# Warmup Iteration 1: Using SEED=3576800841891 as seed for Random +451.284 ops/s +Iteration 1: 1048.112 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 818.449 ops/s + 1048.112 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:46 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3590283099548 as seed for Random -255.187 ops/s -Iteration 1: 399.132 ops/s +# Warmup Iteration 1: Using SEED=3589739633195 as seed for Random +537.793 ops/s +Iteration 1: 1107.434 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 399.132 ops/s + 1107.434 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:33 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3603505343151 as seed for Random -235.715 ops/s -Iteration 1: 403.960 ops/s +# Warmup Iteration 1: Using SEED=3602676515191 as seed for Random +439.638 ops/s +Iteration 1: 800.540 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 403.960 ops/s + 800.540 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:20 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3616759964353 as seed for Random -243.322 ops/s -Iteration 1: 453.194 ops/s +# Warmup Iteration 1: Using SEED=3615659136923 as seed for Random +498.528 ops/s +Iteration 1: 652.719 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 453.194 ops/s + 652.719 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3630060182840 as seed for Random -291.799 ops/s -Iteration 1: 436.216 ops/s +# Warmup Iteration 1: Using SEED=3628579156021 as seed for Random +450.227 ops/s +Iteration 1: 904.957 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 436.216 ops/s + 904.957 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:53 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3643293868704 as seed for Random -205.698 ops/s -Iteration 1: 339.723 ops/s +# Warmup Iteration 1: Using SEED=3641503736009 as seed for Random +442.605 ops/s +Iteration 1: 1004.469 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 339.723 ops/s + 1004.469 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3656553347940 as seed for Random +# Warmup Iteration 1: Using SEED=3654409715181 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1d4228d1 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1be3889a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -367,7 +367,8 @@ return obj; at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -380,25 +381,86 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more + ... 51 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5b8df301 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -416,9 +478,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@636ea782 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -436,9 +575,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6ea00195 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -456,29 +672,192 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6494cd2 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3e86008d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -496,9 +875,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1fb7d520 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -516,9 +972,183 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@16a90bbd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more + +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e607570 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -536,9 +1166,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6837cc2d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -556,9 +1263,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@66282abf with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -576,9 +1360,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@159de53c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -596,9 +1457,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2b0ffcf6 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -616,9 +1554,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@39c96df with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -636,9 +1651,86 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); +if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } +if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { +return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +} +Object a1 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +return obj; +} +Object a2 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +return obj; +} +Object a3 = (java.lang.String)iter.readString(); +if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { +java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +return obj; +} +Object a4 = (java.lang.String)iter.readString(); +java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); +obj.add(a1); +obj.add(a2); +obj.add(a3); +obj.add(a4); +while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { +obj.add((java.lang.String)iter.readString()); +} +return obj; +} + at com.jsoniter.Codegen.gen(Codegen.java:86) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) + at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) + at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) + at com.jsoniter.Codegen.genSource(Codegen.java:234) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) + at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) + at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) + at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) + at com.jsoniter.Codegen.genSource(Codegen.java:241) + at com.jsoniter.Codegen.gen(Codegen.java:68) + at com.jsoniter.Codegen.getDecoder(Codegen.java:25) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -656,6 +1748,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.Codegen.gen(Codegen.java:78) + ... 50 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null at com.jsoniter.Codegen$1.decode(Codegen.java:115) @@ -677,27 +1776,6 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - @@ -715,13 +1793,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3658649759361 as seed for Random -173.743 ops/s -Iteration 1: 236.412 ops/s +# Warmup Iteration 1: Using SEED=3656211289857 as seed for Random +406.008 ops/s +Iteration 1: 775.454 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 236.412 ops/s + 775.454 ops/s # JMH version: 1.33 @@ -738,16 +1816,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3672044516681 as seed for Random -321.978 ops/s -Iteration 1: 552.024 ops/s +# Warmup Iteration 1: Using SEED=3669234975325 as seed for Random +430.528 ops/s +Iteration 1: 821.804 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 552.024 ops/s + 821.804 ops/s -# Run complete. Total time: 00:03:08 +# Run complete. Total time: 00:03:03 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -756,17 +1834,17 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 854.563 ops/s -Deserialization.avajejsonb_jackson thrpt 632.799 ops/s -Deserialization.dsljson thrpt 5438.048 ops/s -Deserialization.dsljson_reflection thrpt 4453.816 ops/s -Deserialization.fastjson thrpt 449.212 ops/s -Deserialization.flexjson thrpt 81.691 ops/s -Deserialization.genson thrpt 818.449 ops/s -Deserialization.gson thrpt 399.132 ops/s -Deserialization.jackson thrpt 403.960 ops/s -Deserialization.jackson_afterburner thrpt 453.194 ops/s -Deserialization.jackson_blackbird thrpt 436.216 ops/s -Deserialization.jodd thrpt 339.723 ops/s -Deserialization.logansquare thrpt 236.412 ops/s -Deserialization.moshi thrpt 552.024 ops/s +Deserialization.avajejsonb thrpt 1328.956 ops/s +Deserialization.avajejsonb_jackson thrpt 1098.517 ops/s +Deserialization.dsljson thrpt 6948.318 ops/s +Deserialization.dsljson_reflection thrpt 5629.881 ops/s +Deserialization.fastjson thrpt 704.168 ops/s +Deserialization.flexjson thrpt 241.988 ops/s +Deserialization.genson thrpt 1048.112 ops/s +Deserialization.gson thrpt 1107.434 ops/s +Deserialization.jackson thrpt 800.540 ops/s +Deserialization.jackson_afterburner thrpt 652.719 ops/s +Deserialization.jackson_blackbird thrpt 904.957 ops/s +Deserialization.jodd thrpt 1004.469 ops/s +Deserialization.logansquare thrpt 775.454 ops/s +Deserialization.moshi thrpt 821.804 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt index 7737b2f..d238fac 100644 --- a/output/clients-ser-1-1.txt +++ b/output/clients-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2559947390814 as seed for Random -290393.240 ops/s -Iteration 1: 443824.503 ops/s +# Warmup Iteration 1: Using SEED=2584851363981 as seed for Random +418896.981 ops/s +Iteration 1: 514711.113 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 443824.503 ops/s + 514711.113 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:05 +# Run progress: 6.67% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2573141895303 as seed for Random -165450.732 ops/s -Iteration 1: 303680.811 ops/s +# Warmup Iteration 1: Using SEED=2597702395633 as seed for Random +386258.738 ops/s +Iteration 1: 507759.812 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 303680.811 ops/s + 507759.812 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:52 +# Run progress: 13.33% complete, ETA 00:02:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2586410592480 as seed for Random -606310.593 ops/s -Iteration 1: 759846.423 ops/s +# Warmup Iteration 1: Using SEED=2610656178297 as seed for Random +831421.007 ops/s +Iteration 1: 948346.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 759846.423 ops/s + 948346.166 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2599619659915 as seed for Random -536217.600 ops/s -Iteration 1: 624688.371 ops/s +# Warmup Iteration 1: Using SEED=2623578637275 as seed for Random +733175.682 ops/s +Iteration 1: 830159.487 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 624688.371 ops/s + 830159.487 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2612819772886 as seed for Random -120691.819 ops/s -Iteration 1: 384081.876 ops/s +# Warmup Iteration 1: Using SEED=2636455975748 as seed for Random +94659.238 ops/s +Iteration 1: 369118.137 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 384081.876 ops/s + 369118.137 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2625997050882 as seed for Random -1966.954 ops/s -Iteration 1: 1427.062 ops/s +# Warmup Iteration 1: Using SEED=2649303882532 as seed for Random +3032.887 ops/s +Iteration 1: 1733.693 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1427.062 ops/s + 1733.693 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:58 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2639182869153 as seed for Random -151031.142 ops/s -Iteration 1: 217537.312 ops/s +# Warmup Iteration 1: Using SEED=2662155575284 as seed for Random +268153.173 ops/s +Iteration 1: 344097.585 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 217537.312 ops/s + 344097.585 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2652316455801 as seed for Random -63553.061 ops/s -Iteration 1: 149391.569 ops/s +# Warmup Iteration 1: Using SEED=2675054339241 as seed for Random +112495.321 ops/s +Iteration 1: 177582.079 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 149391.569 ops/s + 177582.079 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2665456589632 as seed for Random -259150.523 ops/s -Iteration 1: 434670.596 ops/s +# Warmup Iteration 1: Using SEED=2687981173706 as seed for Random +472061.222 ops/s +Iteration 1: 587148.132 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 434670.596 ops/s + 587148.132 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2678624600134 as seed for Random -244564.192 ops/s -Iteration 1: 376325.737 ops/s +# Warmup Iteration 1: Using SEED=2700897504715 as seed for Random +424161.023 ops/s +Iteration 1: 534805.806 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 376325.737 ops/s + 534805.806 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:05 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2691758390481 as seed for Random -99074.384 ops/s -Iteration 1: 194165.481 ops/s +# Warmup Iteration 1: Using SEED=2713804425221 as seed for Random +255571.100 ops/s +Iteration 1: 413561.737 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 194165.481 ops/s + 413561.737 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2704939302838 as seed for Random -20784.506 ops/s -Iteration 1: 51159.015 ops/s +# Warmup Iteration 1: Using SEED=2726686224905 as seed for Random +33230.522 ops/s +Iteration 1: 57844.596 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 51159.015 ops/s + 57844.596 ops/s # JMH version: 1.33 @@ -286,9 +286,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2718135615250 as seed for Random +# Warmup Iteration 1: Using SEED=2739513059990 as seed for Random com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa @@ -654,13 +654,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2720193717752 as seed for Random -148149.805 ops/s -Iteration 1: 334427.634 ops/s +# Warmup Iteration 1: Using SEED=2741231827692 as seed for Random +311424.184 ops/s +Iteration 1: 456802.820 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 334427.634 ops/s + 456802.820 ops/s # JMH version: 1.33 @@ -677,16 +677,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2733439234561 as seed for Random -91109.443 ops/s -Iteration 1: 188799.205 ops/s +# Warmup Iteration 1: Using SEED=2754122568259 as seed for Random +208418.199 ops/s +Iteration 1: 288994.665 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 188799.205 ops/s + 288994.665 ops/s -# Run complete. Total time: 00:03:06 +# Run complete. Total time: 00:03:02 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -695,17 +695,17 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 443824.503 ops/s -Serialization.avajejsonb_jackson thrpt 303680.811 ops/s -Serialization.dsljson thrpt 759846.423 ops/s -Serialization.dsljson_reflection thrpt 624688.371 ops/s -Serialization.fastjson thrpt 384081.876 ops/s -Serialization.flexjson thrpt 1427.062 ops/s -Serialization.genson thrpt 217537.312 ops/s -Serialization.gson thrpt 149391.569 ops/s -Serialization.jackson thrpt 434670.596 ops/s -Serialization.jackson_afterburner thrpt 376325.737 ops/s -Serialization.jackson_blackbird thrpt 194165.481 ops/s -Serialization.jodd thrpt 51159.015 ops/s -Serialization.logansquare thrpt 334427.634 ops/s -Serialization.moshi thrpt 188799.205 ops/s +Serialization.avajejsonb thrpt 514711.113 ops/s +Serialization.avajejsonb_jackson thrpt 507759.812 ops/s +Serialization.dsljson thrpt 948346.166 ops/s +Serialization.dsljson_reflection thrpt 830159.487 ops/s +Serialization.fastjson thrpt 369118.137 ops/s +Serialization.flexjson thrpt 1733.693 ops/s +Serialization.genson thrpt 344097.585 ops/s +Serialization.gson thrpt 177582.079 ops/s +Serialization.jackson thrpt 587148.132 ops/s +Serialization.jackson_afterburner thrpt 534805.806 ops/s +Serialization.jackson_blackbird thrpt 413561.737 ops/s +Serialization.jodd thrpt 57844.596 ops/s +Serialization.logansquare thrpt 456802.820 ops/s +Serialization.moshi thrpt 288994.665 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt index b0fe01c..e092ff2 100644 --- a/output/clients-ser-1-10.txt +++ b/output/clients-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2934782751998 as seed for Random -25998.018 ops/s -Iteration 1: 37433.072 ops/s +# Warmup Iteration 1: Using SEED=2950110540789 as seed for Random +35152.275 ops/s +Iteration 1: 43104.063 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 37433.072 ops/s + 43104.063 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:05 +# Run progress: 6.67% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2948005718346 as seed for Random -11774.475 ops/s -Iteration 1: 23070.638 ops/s +# Warmup Iteration 1: Using SEED=2962966081084 as seed for Random +29413.551 ops/s +Iteration 1: 39200.326 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 23070.638 ops/s + 39200.326 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:52 +# Run progress: 13.33% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2961211914324 as seed for Random -50804.901 ops/s -Iteration 1: 94151.109 ops/s +# Warmup Iteration 1: Using SEED=2975882219341 as seed for Random +91651.741 ops/s +Iteration 1: 122175.490 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 94151.109 ops/s + 122175.490 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2974388410370 as seed for Random -55575.639 ops/s -Iteration 1: 65958.887 ops/s +# Warmup Iteration 1: Using SEED=2988825383211 as seed for Random +78288.615 ops/s +Iteration 1: 86844.465 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 65958.887 ops/s + 86844.465 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2987564763072 as seed for Random -1887.428 ops/s -Iteration 1: 16875.738 ops/s +# Warmup Iteration 1: Using SEED=3001692449110 as seed for Random +10691.427 ops/s +Iteration 1: 32024.270 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 16875.738 ops/s + 32024.270 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3000713989685 as seed for Random -474.453 ops/s -Iteration 1: 312.971 ops/s +# Warmup Iteration 1: Using SEED=3014569956277 as seed for Random +649.177 ops/s +Iteration 1: 446.619 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 312.971 ops/s + 446.619 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:59 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3014084735506 as seed for Random -13995.625 ops/s -Iteration 1: 23530.923 ops/s +# Warmup Iteration 1: Using SEED=3027510697563 as seed for Random +23814.513 ops/s +Iteration 1: 35733.411 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 23530.923 ops/s + 35733.411 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3027242913646 as seed for Random -4916.939 ops/s -Iteration 1: 11270.976 ops/s +# Warmup Iteration 1: Using SEED=3040358880052 as seed for Random +11446.100 ops/s +Iteration 1: 18679.615 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 11270.976 ops/s + 18679.615 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3040386322412 as seed for Random -14768.308 ops/s -Iteration 1: 23870.617 ops/s +# Warmup Iteration 1: Using SEED=3053293689736 as seed for Random +24767.938 ops/s +Iteration 1: 32781.707 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 23870.617 ops/s + 32781.707 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3053601809179 as seed for Random -14475.411 ops/s -Iteration 1: 24513.516 ops/s +# Warmup Iteration 1: Using SEED=3066209929863 as seed for Random +25899.411 ops/s +Iteration 1: 36464.404 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 24513.516 ops/s + 36464.404 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3066784386705 as seed for Random -11797.470 ops/s -Iteration 1: 22109.416 ops/s +# Warmup Iteration 1: Using SEED=3079071513196 as seed for Random +23443.282 ops/s +Iteration 1: 31967.791 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 22109.416 ops/s + 31967.791 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3079904001087 as seed for Random -3088.331 ops/s -Iteration 1: 5551.237 ops/s +# Warmup Iteration 1: Using SEED=3091926856700 as seed for Random +4548.230 ops/s +Iteration 1: 5968.776 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 5551.237 ops/s + 5968.776 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3093027442830 as seed for Random +# Warmup Iteration 1: Using SEED=3104787602943 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { if (obj == null) { stream.writeNull(); return; } stream.writeRaw(obj.toString()); @@ -334,41 +334,25 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -385,30 +369,13 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -636,7 +603,8 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -686,13 +654,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3095037314020 as seed for Random -10045.637 ops/s -Iteration 1: 29823.470 ops/s +# Warmup Iteration 1: Using SEED=3106505378657 as seed for Random +7007.443 ops/s +Iteration 1: 7756.490 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 29823.470 ops/s + 7756.490 ops/s # JMH version: 1.33 @@ -709,16 +677,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3108249840276 as seed for Random -11214.051 ops/s -Iteration 1: 18517.228 ops/s +# Warmup Iteration 1: Using SEED=3119423746978 as seed for Random +14922.454 ops/s +Iteration 1: 26453.336 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 18517.228 ops/s + 26453.336 ops/s -# Run complete. Total time: 00:03:06 +# Run complete. Total time: 00:03:02 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -726,18 +694,18 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 37433.072 ops/s -Serialization.avajejsonb_jackson thrpt 23070.638 ops/s -Serialization.dsljson thrpt 94151.109 ops/s -Serialization.dsljson_reflection thrpt 65958.887 ops/s -Serialization.fastjson thrpt 16875.738 ops/s -Serialization.flexjson thrpt 312.971 ops/s -Serialization.genson thrpt 23530.923 ops/s -Serialization.gson thrpt 11270.976 ops/s -Serialization.jackson thrpt 23870.617 ops/s -Serialization.jackson_afterburner thrpt 24513.516 ops/s -Serialization.jackson_blackbird thrpt 22109.416 ops/s -Serialization.jodd thrpt 5551.237 ops/s -Serialization.logansquare thrpt 29823.470 ops/s -Serialization.moshi thrpt 18517.228 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 43104.063 ops/s +Serialization.avajejsonb_jackson thrpt 39200.326 ops/s +Serialization.dsljson thrpt 122175.490 ops/s +Serialization.dsljson_reflection thrpt 86844.465 ops/s +Serialization.fastjson thrpt 32024.270 ops/s +Serialization.flexjson thrpt 446.619 ops/s +Serialization.genson thrpt 35733.411 ops/s +Serialization.gson thrpt 18679.615 ops/s +Serialization.jackson thrpt 32781.707 ops/s +Serialization.jackson_afterburner thrpt 36464.404 ops/s +Serialization.jackson_blackbird thrpt 31967.791 ops/s +Serialization.jodd thrpt 5968.776 ops/s +Serialization.logansquare thrpt 7756.490 ops/s +Serialization.moshi thrpt 26453.336 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt index 39fd74d..21246db 100644 --- a/output/clients-ser-1-100.txt +++ b/output/clients-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3308707509959 as seed for Random -1769.640 ops/s -Iteration 1: 3033.861 ops/s +# Warmup Iteration 1: Using SEED=3315537319178 as seed for Random +3736.115 ops/s +Iteration 1: 4583.360 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 3033.861 ops/s + 4583.360 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:06 +# Run progress: 6.67% complete, ETA 00:03:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3321994634997 as seed for Random -1315.679 ops/s -Iteration 1: 2288.133 ops/s +# Warmup Iteration 1: Using SEED=3328478947933 as seed for Random +2970.335 ops/s +Iteration 1: 4075.310 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 2288.133 ops/s + 4075.310 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:52 +# Run progress: 13.33% complete, ETA 00:02:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3335188088262 as seed for Random -5080.417 ops/s -Iteration 1: 9128.888 ops/s +# Warmup Iteration 1: Using SEED=3341457745567 as seed for Random +8331.083 ops/s +Iteration 1: 11371.818 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 9128.888 ops/s + 11371.818 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3348352039916 as seed for Random -6001.861 ops/s -Iteration 1: 6919.363 ops/s +# Warmup Iteration 1: Using SEED=3354376858355 as seed for Random +8305.532 ops/s +Iteration 1: 8981.855 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 6919.363 ops/s + 8981.855 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3361535582090 as seed for Random -268.785 ops/s -Iteration 1: 1646.965 ops/s +# Warmup Iteration 1: Using SEED=3367250676338 as seed for Random +496.113 ops/s +Iteration 1: 1942.082 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 1646.965 ops/s + 1942.082 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3374711373762 as seed for Random -99.122 ops/s -Iteration 1: 138.452 ops/s +# Warmup Iteration 1: Using SEED=3380179777217 as seed for Random +173.986 ops/s +Iteration 1: 142.943 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 138.452 ops/s + 142.943 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:59 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3388221253175 as seed for Random -1366.014 ops/s -Iteration 1: 2346.689 ops/s +# Warmup Iteration 1: Using SEED=3393324391104 as seed for Random +2530.404 ops/s +Iteration 1: 3485.946 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 2346.689 ops/s + 3485.946 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:46 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3401482971198 as seed for Random -691.618 ops/s -Iteration 1: 1442.671 ops/s +# Warmup Iteration 1: Using SEED=3406244025529 as seed for Random +1077.098 ops/s +Iteration 1: 1776.459 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1442.671 ops/s + 1776.459 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3414697672391 as seed for Random -1468.106 ops/s -Iteration 1: 2368.240 ops/s +# Warmup Iteration 1: Using SEED=3419159261038 as seed for Random +2268.248 ops/s +Iteration 1: 3267.391 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 2368.240 ops/s + 3267.391 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3427908893308 as seed for Random -1559.941 ops/s -Iteration 1: 2302.762 ops/s +# Warmup Iteration 1: Using SEED=3432095367912 as seed for Random +2267.552 ops/s +Iteration 1: 3140.207 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 2302.762 ops/s + 3140.207 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3441075445467 as seed for Random -1359.441 ops/s -Iteration 1: 2269.337 ops/s +# Warmup Iteration 1: Using SEED=3444951420304 as seed for Random +2231.875 ops/s +Iteration 1: 3272.444 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 2269.337 ops/s + 3272.444 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3454312729715 as seed for Random -279.651 ops/s -Iteration 1: 563.830 ops/s +# Warmup Iteration 1: Using SEED=3457853762687 as seed for Random +380.859 ops/s +Iteration 1: 592.261 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 563.830 ops/s + 592.261 ops/s # JMH version: 1.33 @@ -286,12 +286,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3467546027141 as seed for Random +# Warmup Iteration 1: Using SEED=3470755731791 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { if (obj == null) { stream.writeNull(); return; } stream.writeRaw(obj.toString()); @@ -334,25 +334,41 @@ stream.writeRaw(obj.toString()); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -369,9 +385,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -388,9 +436,50 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -407,9 +496,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -426,9 +547,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -445,9 +598,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -464,9 +649,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -483,9 +700,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -502,9 +751,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -521,9 +802,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -540,9 +853,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -559,9 +904,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -578,9 +955,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -597,9 +1006,41 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +if (obj == null) { stream.writeNull(); return; } +stream.writeRaw(obj.toString()); +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -616,6 +1057,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) @@ -654,13 +1102,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Run progress: 86.67% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3469611319484 as seed for Random -586.086 ops/s -Iteration 1: 1871.633 ops/s +# Warmup Iteration 1: Using SEED=3472544712828 as seed for Random +1797.186 ops/s +Iteration 1: 4169.910 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 1871.633 ops/s + 4169.910 ops/s # JMH version: 1.33 @@ -677,16 +1125,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3482837262071 as seed for Random -1154.560 ops/s -Iteration 1: 1853.584 ops/s +# Warmup Iteration 1: Using SEED=3485448996496 as seed for Random +1790.064 ops/s +Iteration 1: 2394.454 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 1853.584 ops/s + 2394.454 ops/s -# Run complete. Total time: 00:03:07 +# Run complete. Total time: 00:03:02 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -694,18 +1142,18 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 3033.861 ops/s -Serialization.avajejsonb_jackson thrpt 2288.133 ops/s -Serialization.dsljson thrpt 9128.888 ops/s -Serialization.dsljson_reflection thrpt 6919.363 ops/s -Serialization.fastjson thrpt 1646.965 ops/s -Serialization.flexjson thrpt 138.452 ops/s -Serialization.genson thrpt 2346.689 ops/s -Serialization.gson thrpt 1442.671 ops/s -Serialization.jackson thrpt 2368.240 ops/s -Serialization.jackson_afterburner thrpt 2302.762 ops/s -Serialization.jackson_blackbird thrpt 2269.337 ops/s -Serialization.jodd thrpt 563.830 ops/s -Serialization.logansquare thrpt 1871.633 ops/s -Serialization.moshi thrpt 1853.584 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 4583.360 ops/s +Serialization.avajejsonb_jackson thrpt 4075.310 ops/s +Serialization.dsljson thrpt 11371.818 ops/s +Serialization.dsljson_reflection thrpt 8981.855 ops/s +Serialization.fastjson thrpt 1942.082 ops/s +Serialization.flexjson thrpt 142.943 ops/s +Serialization.genson thrpt 3485.946 ops/s +Serialization.gson thrpt 1776.459 ops/s +Serialization.jackson thrpt 3267.391 ops/s +Serialization.jackson_afterburner thrpt 3140.207 ops/s +Serialization.jackson_blackbird thrpt 3272.444 ops/s +Serialization.jodd thrpt 592.261 ops/s +Serialization.logansquare thrpt 4169.910 ops/s +Serialization.moshi thrpt 2394.454 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt index dca2cbb..1de5648 100644 --- a/output/users-deser-1-1.txt +++ b/output/users-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=504490324203 as seed for Random -311987.178 ops/s -Iteration 1: 492033.093 ops/s +# Warmup Iteration 1: Using SEED=577689357634 as seed for Random +530794.474 ops/s +Iteration 1: 645501.494 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 492033.093 ops/s + 645501.494 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:02 +# Run progress: 3.03% complete, ETA 00:06:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=517647082635 as seed for Random -178781.040 ops/s -Iteration 1: 310526.340 ops/s +# Warmup Iteration 1: Using SEED=590537302857 as seed for Random +312063.783 ops/s +Iteration 1: 429903.510 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 310526.340 ops/s + 429903.510 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:47 +# Run progress: 6.06% complete, ETA 00:06:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=530733330373 as seed for Random +# Warmup Iteration 1: Using SEED=603344079852 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax @@ -104,7 +104,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -161,8 +162,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -195,7 +195,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -213,6 +213,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -309,7 +315,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -327,12 +333,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:32 +# Run progress: 9.09% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=531697690383 as seed for Random -359325.543 ops/s -Iteration 1: 556105.928 ops/s +# Warmup Iteration 1: Using SEED=604040853123 as seed for Random +570448.254 ops/s +Iteration 1: 673015.363 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 556105.928 ops/s + 673015.363 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:52 +# Run progress: 12.12% complete, ETA 00:04:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=544739851328 as seed for Random -382991.616 ops/s -Iteration 1: 447869.601 ops/s +# Warmup Iteration 1: Using SEED=616928485231 as seed for Random +553293.803 ops/s +Iteration 1: 640112.174 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 447869.601 ops/s + 640112.174 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:58 +# Run progress: 15.15% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=557748868452 as seed for Random -64429.316 ops/s -Iteration 1: 203225.666 ops/s +# Warmup Iteration 1: Using SEED=629800868294 as seed for Random +140577.838 ops/s +Iteration 1: 248895.943 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 203225.666 ops/s + 248895.943 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:58 +# Run progress: 18.18% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=570818301400 as seed for Random -11533.118 ops/s -Iteration 1: 24186.404 ops/s +# Warmup Iteration 1: Using SEED=642602340193 as seed for Random +11767.619 ops/s +Iteration 1: 33906.722 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 24186.404 ops/s + 33906.722 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:55 +# Run progress: 21.21% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=584000804078 as seed for Random -120629.993 ops/s -Iteration 1: 210756.856 ops/s +# Warmup Iteration 1: Using SEED=655434801725 as seed for Random +220144.958 ops/s +Iteration 1: 290517.430 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 210756.856 ops/s + 290517.430 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:49 +# Run progress: 24.24% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=597238399798 as seed for Random -88967.743 ops/s -Iteration 1: 182679.698 ops/s +# Warmup Iteration 1: Using SEED=668267125172 as seed for Random +187824.927 ops/s +Iteration 1: 281591.652 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 182679.698 ops/s + 281591.652 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:42 +# Run progress: 27.27% complete, ETA 00:04:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=610345188615 as seed for Random -162030.807 ops/s -Iteration 1: 296130.795 ops/s +# Warmup Iteration 1: Using SEED=681060318089 as seed for Random +293897.544 ops/s +Iteration 1: 402387.759 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 296130.795 ops/s + 402387.759 ops/s # JMH version: 1.33 @@ -548,15 +548,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:33 +# Run progress: 30.30% complete, ETA 00:04:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=623459333215 as seed for Random -213238.847 ops/s -Iteration 1: 311726.504 ops/s +# Warmup Iteration 1: Using SEED=693847978341 as seed for Random +344902.457 ops/s +Iteration 1: 447586.370 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 311726.504 ops/s + 447586.370 ops/s # JMH version: 1.33 @@ -571,15 +571,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:24 +# Run progress: 33.33% complete, ETA 00:04:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=636567084263 as seed for Random -247950.436 ops/s -Iteration 1: 318819.013 ops/s +# Warmup Iteration 1: Using SEED=706654051254 as seed for Random +231850.567 ops/s +Iteration 1: 306059.000 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 318819.013 ops/s + 306059.000 ops/s # JMH version: 1.33 @@ -594,15 +594,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:14 +# Run progress: 36.36% complete, ETA 00:04:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=649609061577 as seed for Random -163979.488 ops/s -Iteration 1: 263342.939 ops/s +# Warmup Iteration 1: Using SEED=719434050648 as seed for Random +244070.277 ops/s +Iteration 1: 304739.202 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 263342.939 ops/s + 304739.202 ops/s # JMH version: 1.33 @@ -617,15 +617,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:03 +# Run progress: 39.39% complete, ETA 00:03:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=662663007518 as seed for Random -31737.770 ops/s -Iteration 1: 59944.782 ops/s +# Warmup Iteration 1: Using SEED=732261874762 as seed for Random +46702.097 ops/s +Iteration 1: 61137.809 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 59944.782 ops/s + 61137.809 ops/s # JMH version: 1.33 @@ -640,12 +640,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:52 +# Run progress: 42.42% complete, ETA 00:03:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=675723172465 as seed for Random +# Warmup Iteration 1: Using SEED=745071729967 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53cef3bc with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -732,84 +732,25 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@45fa089 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -827,84 +768,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@43485b4b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -922,84 +788,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@139f53c8 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1017,93 +808,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@644c0c7c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1121,84 +828,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3c77b56d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1216,84 +848,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1b9baa13 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1311,179 +868,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3166c2ab with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2f7aa6d0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1501,180 +888,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@72e4f4ac with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1751f389 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1692,84 +908,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@dbd6c65 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1784,87 +925,12 @@ return obj; at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2114582d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1882,84 +948,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5b93fea9 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1977,84 +968,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@232ea3b5 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -2072,84 +988,50 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6665e975 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -2167,13 +1049,6 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more @@ -2190,15 +1065,15 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:26 +# Run progress: 45.45% complete, ETA 00:03:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=676867239656 as seed for Random -210546.419 ops/s -Iteration 1: 294764.110 ops/s +# Warmup Iteration 1: Using SEED=746753073130 as seed for Random +348291.930 ops/s +Iteration 1: 426891.468 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 294764.110 ops/s + 426891.468 ops/s # JMH version: 1.33 @@ -2213,15 +1088,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:17 +# Run progress: 48.48% complete, ETA 00:03:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=689920492649 as seed for Random -78232.859 ops/s -Iteration 1: 163680.474 ops/s +# Warmup Iteration 1: Using SEED=759566676707 as seed for Random +169156.082 ops/s +Iteration 1: 238625.555 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 163680.474 ops/s + 238625.555 ops/s # JMH version: 1.33 @@ -2236,15 +1111,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:06 +# Run progress: 51.52% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=702993563663 as seed for Random -134222.569 ops/s -Iteration 1: 199040.165 ops/s +# Warmup Iteration 1: Using SEED=772425134352 as seed for Random +251573.623 ops/s +Iteration 1: 321222.547 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 199040.165 ops/s + 321222.547 ops/s # JMH version: 1.33 @@ -2259,15 +1134,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:56 +# Run progress: 54.55% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=716051076956 as seed for Random -9356.951 ops/s -Iteration 1: 32713.446 ops/s +# Warmup Iteration 1: Using SEED=785336780794 as seed for Random +29863.840 ops/s +Iteration 1: 57772.331 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 32713.446 ops/s + 57772.331 ops/s # JMH version: 1.33 @@ -2282,15 +1157,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:45 +# Run progress: 57.58% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=729147556257 as seed for Random -80728.326 ops/s -Iteration 1: 219132.193 ops/s +# Warmup Iteration 1: Using SEED=798137265732 as seed for Random +240433.200 ops/s +Iteration 1: 334091.021 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 219132.193 ops/s + 334091.021 ops/s # JMH version: 1.33 @@ -2305,15 +1180,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:34 +# Run progress: 60.61% complete, ETA 00:02:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=742293730058 as seed for Random -21184.108 ops/s -Iteration 1: 25619.832 ops/s +# Warmup Iteration 1: Using SEED=810994092175 as seed for Random +159735.017 ops/s +Iteration 1: 260677.192 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 25619.832 ops/s + 260677.192 ops/s # JMH version: 1.33 @@ -2328,15 +1203,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:23 +# Run progress: 63.64% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=755354821499 as seed for Random -163212.361 ops/s -Iteration 1: 321396.840 ops/s +# Warmup Iteration 1: Using SEED=823811473605 as seed for Random +335503.309 ops/s +Iteration 1: 450419.673 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 321396.840 ops/s + 450419.673 ops/s # JMH version: 1.33 @@ -2351,15 +1226,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:12 +# Run progress: 66.67% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=768473323667 as seed for Random -17465.946 ops/s -Iteration 1: 26107.220 ops/s +# Warmup Iteration 1: Using SEED=836712782074 as seed for Random +33653.538 ops/s +Iteration 1: 39544.164 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 26107.220 ops/s + 39544.164 ops/s # JMH version: 1.33 @@ -2374,15 +1249,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:00 +# Run progress: 69.70% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=781520859445 as seed for Random -21317.751 ops/s -Iteration 1: 30434.920 ops/s +# Warmup Iteration 1: Using SEED=849479360891 as seed for Random +16492.577 ops/s +Iteration 1: 37785.504 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 30434.920 ops/s + 37785.504 ops/s # JMH version: 1.33 @@ -2397,15 +1272,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:48 +# Run progress: 72.73% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=794649717890 as seed for Random -28924.746 ops/s -Iteration 1: 63721.099 ops/s +# Warmup Iteration 1: Using SEED=862330857977 as seed for Random +69215.113 ops/s +Iteration 1: 88422.604 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 63721.099 ops/s + 88422.604 ops/s # JMH version: 1.33 @@ -2420,15 +1295,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:37 +# Run progress: 75.76% complete, ETA 00:01:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=807769003532 as seed for Random -48710.293 ops/s -Iteration 1: 100106.584 ops/s +# Warmup Iteration 1: Using SEED=875130040010 as seed for Random +35422.888 ops/s +Iteration 1: 159740.891 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 100106.584 ops/s + 159740.891 ops/s # JMH version: 1.33 @@ -2443,15 +1318,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:25 +# Run progress: 78.79% complete, ETA 00:01:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=820896424247 as seed for Random -35430.911 ops/s -Iteration 1: 50723.293 ops/s +# Warmup Iteration 1: Using SEED=888002426965 as seed for Random +46953.057 ops/s +Iteration 1: 56881.984 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 50723.293 ops/s + 56881.984 ops/s # JMH version: 1.33 @@ -2466,15 +1341,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:13 +# Run progress: 81.82% complete, ETA 00:01:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=834054817019 as seed for Random -113237.936 ops/s -Iteration 1: 197146.952 ops/s +# Warmup Iteration 1: Using SEED=900877707245 as seed for Random +98613.780 ops/s +Iteration 1: 256607.443 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 197146.952 ops/s + 256607.443 ops/s # JMH version: 1.33 @@ -2489,15 +1364,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:01 +# Run progress: 84.85% complete, ETA 00:01:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=847178336968 as seed for Random -52065.057 ops/s -Iteration 1: 66598.765 ops/s +# Warmup Iteration 1: Using SEED=913753801630 as seed for Random +86513.817 ops/s +Iteration 1: 110560.382 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 66598.765 ops/s + 110560.382 ops/s # JMH version: 1.33 @@ -2512,15 +1387,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:49 +# Run progress: 87.88% complete, ETA 00:00:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=860277185984 as seed for Random -32034.889 ops/s -Iteration 1: 49543.151 ops/s +# Warmup Iteration 1: Using SEED=926608641775 as seed for Random +37426.440 ops/s +Iteration 1: 52969.311 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 49543.151 ops/s + 52969.311 ops/s # JMH version: 1.33 @@ -2537,13 +1412,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=873336423766 as seed for Random -21582.863 ops/s -Iteration 1: 37864.048 ops/s +# Warmup Iteration 1: Using SEED=939406284591 as seed for Random +48582.586 ops/s +Iteration 1: 64689.401 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 37864.048 ops/s + 64689.401 ops/s # JMH version: 1.33 @@ -2560,13 +1435,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=886373819784 as seed for Random -78565.126 ops/s -Iteration 1: 234210.177 ops/s +# Warmup Iteration 1: Using SEED=952194166718 as seed for Random +175443.468 ops/s +Iteration 1: 344825.876 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 234210.177 ops/s + 344825.876 ops/s # JMH version: 1.33 @@ -2583,16 +1458,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=899528372352 as seed for Random -89241.683 ops/s -Iteration 1: 169991.839 ops/s +# Warmup Iteration 1: Using SEED=965007902259 as seed for Random +166697.769 ops/s +Iteration 1: 249413.596 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 169991.839 ops/s + 249413.596 ops/s -# Run complete. Total time: 00:06:48 +# Run complete. Total time: 00:06:40 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2601,34 +1476,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 492033.093 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 310526.340 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 556105.928 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 447869.601 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 203225.666 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 24186.404 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 210756.856 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 182679.698 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 296130.795 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 311726.504 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 318819.013 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 263342.939 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 59944.782 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 294764.110 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 163680.474 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 199040.165 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 32713.446 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 219132.193 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 25619.832 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 321396.840 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 26107.220 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 30434.920 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 63721.099 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 100106.584 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 50723.293 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 197146.952 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 66598.765 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 49543.151 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 37864.048 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 234210.177 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 169991.839 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 645501.494 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 429903.510 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 673015.363 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 640112.174 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 248895.943 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 33906.722 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 290517.430 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 281591.652 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 402387.759 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 447586.370 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 306059.000 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 304739.202 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 61137.809 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 426891.468 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 238625.555 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 321222.547 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 57772.331 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 334091.021 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 260677.192 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 450419.673 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 39544.164 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 37785.504 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 88422.604 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 159740.891 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 56881.984 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 256607.443 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 110560.382 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 52969.311 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 64689.401 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 344825.876 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 249413.596 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt index 8b1b41c..26722bb 100644 --- a/output/users-deser-1-10.txt +++ b/output/users-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1323952992915 as seed for Random -32956.376 ops/s -Iteration 1: 54227.859 ops/s +# Warmup Iteration 1: Using SEED=1379370200169 as seed for Random +56479.908 ops/s +Iteration 1: 67682.818 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 54227.859 ops/s + 67682.818 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:58 +# Run progress: 3.03% complete, ETA 00:06:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1337013715068 as seed for Random -25439.006 ops/s -Iteration 1: 38217.059 ops/s +# Warmup Iteration 1: Using SEED=1392280842510 as seed for Random +34265.373 ops/s +Iteration 1: 47078.282 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 38217.059 ops/s + 47078.282 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:46 +# Run progress: 6.06% complete, ETA 00:06:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1350163845111 as seed for Random +# Warmup Iteration 1: Using SEED=1405164417311 as seed for Random java.lang.ExceptionInInitializerError @@ -224,8 +224,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -358,7 +357,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:31 +# Run progress: 9.09% complete, ETA 00:04:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1351155011810 as seed for Random -41757.574 ops/s -Iteration 1: 59734.089 ops/s +# Warmup Iteration 1: Using SEED=1405860804845 as seed for Random +52230.929 ops/s +Iteration 1: 68017.008 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 59734.089 ops/s + 68017.008 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:52 +# Run progress: 12.12% complete, ETA 00:04:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1364294709968 as seed for Random -42291.340 ops/s -Iteration 1: 47836.498 ops/s +# Warmup Iteration 1: Using SEED=1418747970082 as seed for Random +62018.613 ops/s +Iteration 1: 71116.913 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 47836.498 ops/s + 71116.913 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:59 +# Run progress: 15.15% complete, ETA 00:04:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1377436286789 as seed for Random -14627.047 ops/s -Iteration 1: 28957.638 ops/s +# Warmup Iteration 1: Using SEED=1431629714954 as seed for Random +28076.407 ops/s +Iteration 1: 43085.593 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 28957.638 ops/s + 43085.593 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:59 +# Run progress: 18.18% complete, ETA 00:04:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1390563968267 as seed for Random -1212.802 ops/s -Iteration 1: 2635.713 ops/s +# Warmup Iteration 1: Using SEED=1444437015748 as seed for Random +1910.950 ops/s +Iteration 1: 4174.843 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 2635.713 ops/s + 4174.843 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:56 +# Run progress: 21.21% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1403747745183 as seed for Random -21386.867 ops/s -Iteration 1: 29644.907 ops/s +# Warmup Iteration 1: Using SEED=1457343701553 as seed for Random +34140.888 ops/s +Iteration 1: 40548.492 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 29644.907 ops/s + 40548.492 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:50 +# Run progress: 24.24% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1416842822680 as seed for Random -16187.329 ops/s -Iteration 1: 27710.065 ops/s +# Warmup Iteration 1: Using SEED=1470151525398 as seed for Random +29393.977 ops/s +Iteration 1: 39168.975 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 27710.065 ops/s + 39168.975 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:42 +# Run progress: 27.27% complete, ETA 00:04:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1429928345536 as seed for Random -20731.899 ops/s -Iteration 1: 36079.792 ops/s +# Warmup Iteration 1: Using SEED=1482973537085 as seed for Random +36193.347 ops/s +Iteration 1: 47942.880 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 36079.792 ops/s + 47942.880 ops/s # JMH version: 1.33 @@ -548,15 +548,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:33 +# Run progress: 30.30% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1443055365189 as seed for Random -27288.084 ops/s -Iteration 1: 39828.090 ops/s +# Warmup Iteration 1: Using SEED=1495818632929 as seed for Random +42698.342 ops/s +Iteration 1: 52966.419 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 39828.090 ops/s + 52966.419 ops/s # JMH version: 1.33 @@ -571,15 +571,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:24 +# Run progress: 33.33% complete, ETA 00:04:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1456180860287 as seed for Random -27216.626 ops/s -Iteration 1: 38224.529 ops/s +# Warmup Iteration 1: Using SEED=1508635945546 as seed for Random +46506.864 ops/s +Iteration 1: 54366.413 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 38224.529 ops/s + 54366.413 ops/s # JMH version: 1.33 @@ -594,15 +594,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:14 +# Run progress: 36.36% complete, ETA 00:04:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1469237257329 as seed for Random -11290.612 ops/s -Iteration 1: 26755.310 ops/s +# Warmup Iteration 1: Using SEED=1521447889493 as seed for Random +22359.184 ops/s +Iteration 1: 31151.110 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 26755.310 ops/s + 31151.110 ops/s # JMH version: 1.33 @@ -617,15 +617,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:03 +# Run progress: 39.39% complete, ETA 00:03:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1482343567563 as seed for Random -4317.970 ops/s -Iteration 1: 6527.032 ops/s +# Warmup Iteration 1: Using SEED=1534270865491 as seed for Random +4362.389 ops/s +Iteration 1: 8038.979 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 6527.032 ops/s + 8038.979 ops/s # JMH version: 1.33 @@ -640,12 +640,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:52 +# Run progress: 42.42% complete, ETA 00:03:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1495487292996 as seed for Random +# Warmup Iteration 1: Using SEED=1547099275781 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@518506f1 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@32318428 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -732,24 +732,15 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@33e280c1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@556e661d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -844,7 +835,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@505cf006 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5cc62eec with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -939,7 +930,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@32318428 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@503a20d7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1034,7 +1025,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7aae7867 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5c8f4203 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1129,7 +1120,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@37a3c8aa with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1be5b23b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1224,7 +1215,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@9183ac1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6780fd65 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1319,7 +1310,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@47e538f8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1510126f with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1406,15 +1397,24 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6897a4ef with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3cd93ee6 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1509,7 +1509,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2d9ad6a0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@143ae2cc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1604,7 +1604,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1c50d72c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@c7ec61a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1699,7 +1699,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@690da177 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@71e16726 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1794,7 +1794,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@79b4aa38 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1889,7 +1889,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6ba18d86 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@67c522b1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -1984,7 +1984,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@dd1be42 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -2115,15 +2115,15 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:28 +# Run progress: 45.45% complete, ETA 00:03:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1497562586238 as seed for Random -26709.458 ops/s -Iteration 1: 32610.318 ops/s +# Warmup Iteration 1: Using SEED=1548810248155 as seed for Random +42047.576 ops/s +Iteration 1: 51699.796 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 32610.318 ops/s + 51699.796 ops/s # JMH version: 1.33 @@ -2138,15 +2138,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:18 +# Run progress: 48.48% complete, ETA 00:03:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1510709489065 as seed for Random -17907.436 ops/s -Iteration 1: 34438.411 ops/s +# Warmup Iteration 1: Using SEED=1561629502407 as seed for Random +32786.207 ops/s +Iteration 1: 47884.040 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 34438.411 ops/s + 47884.040 ops/s # JMH version: 1.33 @@ -2161,15 +2161,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:08 +# Run progress: 51.52% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1523771088016 as seed for Random -14516.939 ops/s -Iteration 1: 18824.258 ops/s +# Warmup Iteration 1: Using SEED=1574430217119 as seed for Random +25136.633 ops/s +Iteration 1: 32210.173 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 18824.258 ops/s + 32210.173 ops/s # JMH version: 1.33 @@ -2184,15 +2184,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:57 +# Run progress: 54.55% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1536875773465 as seed for Random -1596.304 ops/s -Iteration 1: 3381.593 ops/s +# Warmup Iteration 1: Using SEED=1587311298392 as seed for Random +3373.738 ops/s +Iteration 1: 6151.500 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 3381.593 ops/s + 6151.500 ops/s # JMH version: 1.33 @@ -2207,15 +2207,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:46 +# Run progress: 57.58% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1550023802595 as seed for Random -7132.397 ops/s -Iteration 1: 16503.405 ops/s +# Warmup Iteration 1: Using SEED=1600148020213 as seed for Random +25556.528 ops/s +Iteration 1: 39999.197 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 16503.405 ops/s + 39999.197 ops/s # JMH version: 1.33 @@ -2230,15 +2230,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:35 +# Run progress: 60.61% complete, ETA 00:02:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1563239970122 as seed for Random -2462.729 ops/s -Iteration 1: 2522.815 ops/s +# Warmup Iteration 1: Using SEED=1613061865365 as seed for Random +18946.052 ops/s +Iteration 1: 27013.421 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 2522.815 ops/s + 27013.421 ops/s # JMH version: 1.33 @@ -2253,15 +2253,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:24 +# Run progress: 63.64% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1576671159699 as seed for Random -18624.693 ops/s -Iteration 1: 40066.434 ops/s +# Warmup Iteration 1: Using SEED=1625978797482 as seed for Random +37577.691 ops/s +Iteration 1: 53003.531 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 40066.434 ops/s + 53003.531 ops/s # JMH version: 1.33 @@ -2276,15 +2276,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:12 +# Run progress: 66.67% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1589820930860 as seed for Random -5099.410 ops/s -Iteration 1: 10464.920 ops/s +# Warmup Iteration 1: Using SEED=1638828122052 as seed for Random +12793.620 ops/s +Iteration 1: 22537.800 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 10464.920 ops/s + 22537.800 ops/s # JMH version: 1.33 @@ -2299,15 +2299,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:01 +# Run progress: 69.70% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1602854725107 as seed for Random -1577.358 ops/s -Iteration 1: 2877.693 ops/s +# Warmup Iteration 1: Using SEED=1651729693190 as seed for Random +3086.286 ops/s +Iteration 1: 5119.970 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 2877.693 ops/s + 5119.970 ops/s # JMH version: 1.33 @@ -2322,15 +2322,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:49 +# Run progress: 72.73% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1616028340628 as seed for Random -2927.850 ops/s -Iteration 1: 8761.819 ops/s +# Warmup Iteration 1: Using SEED=1664617228827 as seed for Random +7401.024 ops/s +Iteration 1: 11843.017 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 8761.819 ops/s + 11843.017 ops/s # JMH version: 1.33 @@ -2345,15 +2345,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:37 +# Run progress: 75.76% complete, ETA 00:01:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1629286049765 as seed for Random -2251.407 ops/s -Iteration 1: 2589.172 ops/s +# Warmup Iteration 1: Using SEED=1677517724461 as seed for Random +11685.141 ops/s +Iteration 1: 23447.314 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 2589.172 ops/s + 23447.314 ops/s # JMH version: 1.33 @@ -2368,15 +2368,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:25 +# Run progress: 78.79% complete, ETA 00:01:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1642417397550 as seed for Random -3812.278 ops/s -Iteration 1: 5456.138 ops/s +# Warmup Iteration 1: Using SEED=1690439692686 as seed for Random +4615.203 ops/s +Iteration 1: 5999.845 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 5456.138 ops/s + 5999.845 ops/s # JMH version: 1.33 @@ -2391,15 +2391,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:13 +# Run progress: 81.82% complete, ETA 00:01:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1655505122377 as seed for Random -3658.254 ops/s -Iteration 1: 4094.118 ops/s +# Warmup Iteration 1: Using SEED=1703263592543 as seed for Random +6228.671 ops/s +Iteration 1: 28244.113 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 4094.118 ops/s + 28244.113 ops/s # JMH version: 1.33 @@ -2414,15 +2414,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:01 +# Run progress: 84.85% complete, ETA 00:01:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1668655365202 as seed for Random -8755.479 ops/s -Iteration 1: 17959.037 ops/s +# Warmup Iteration 1: Using SEED=1716076253392 as seed for Random +18400.071 ops/s +Iteration 1: 24965.013 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 17959.037 ops/s + 24965.013 ops/s # JMH version: 1.33 @@ -2437,15 +2437,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:49 +# Run progress: 87.88% complete, ETA 00:00:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1681810337836 as seed for Random -3770.611 ops/s -Iteration 1: 5616.261 ops/s +# Warmup Iteration 1: Using SEED=1728886931961 as seed for Random +4559.295 ops/s +Iteration 1: 5844.630 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 5616.261 ops/s + 5844.630 ops/s # JMH version: 1.33 @@ -2460,15 +2460,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:37 +# Run progress: 90.91% complete, ETA 00:00:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1694914079788 as seed for Random -3172.683 ops/s -Iteration 1: 6317.958 ops/s +# Warmup Iteration 1: Using SEED=1741754825560 as seed for Random +4894.988 ops/s +Iteration 1: 8660.938 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 6317.958 ops/s + 8660.938 ops/s # JMH version: 1.33 @@ -2485,13 +2485,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1707989865394 as seed for Random -6332.790 ops/s -Iteration 1: 26208.585 ops/s +# Warmup Iteration 1: Using SEED=1754558055655 as seed for Random +31356.510 ops/s +Iteration 1: 44343.876 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 26208.585 ops/s + 44343.876 ops/s # JMH version: 1.33 @@ -2508,16 +2508,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1721159674971 as seed for Random -3531.661 ops/s -Iteration 1: 22162.923 ops/s +# Warmup Iteration 1: Using SEED=1767442599511 as seed for Random +17021.638 ops/s +Iteration 1: 31272.378 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 22162.923 ops/s + 31272.378 ops/s -# Run complete. Total time: 00:06:50 +# Run complete. Total time: 00:06:41 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2526,34 +2526,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 54227.859 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 38217.059 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 59734.089 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 47836.498 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 28957.638 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 2635.713 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 29644.907 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 27710.065 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 36079.792 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 39828.090 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 38224.529 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 26755.310 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 6527.032 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 32610.318 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 34438.411 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 18824.258 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 3381.593 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 16503.405 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 2522.815 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 40066.434 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 10464.920 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 2877.693 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 8761.819 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2589.172 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 5456.138 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 4094.118 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 17959.037 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 5616.261 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 6317.958 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 26208.585 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 22162.923 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 67682.818 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 47078.282 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 68017.008 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 71116.913 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 43085.593 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 4174.843 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 40548.492 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 39168.975 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 47942.880 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 52966.419 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 54366.413 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 31151.110 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 8038.979 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 51699.796 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 47884.040 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 32210.173 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 6151.500 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 39999.197 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 27013.421 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 53003.531 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 22537.800 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 5119.970 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 11843.017 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 23447.314 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 5999.845 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 28244.113 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 24965.013 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 5844.630 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 8660.938 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 44343.876 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 31272.378 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt index 11e9bff..b42ef3d 100644 --- a/output/users-deser-1-100.txt +++ b/output/users-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2147253736957 as seed for Random -3805.963 ops/s -Iteration 1: 5492.166 ops/s +# Warmup Iteration 1: Using SEED=2182629856506 as seed for Random +4504.088 ops/s +Iteration 1: 6262.039 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 5492.166 ops/s + 6262.039 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:03 +# Run progress: 3.03% complete, ETA 00:06:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2160399492480 as seed for Random -2459.705 ops/s -Iteration 1: 3720.105 ops/s +# Warmup Iteration 1: Using SEED=2195480980131 as seed for Random +3058.566 ops/s +Iteration 1: 4731.451 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 3720.105 ops/s + 4731.451 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:49 +# Run progress: 6.06% complete, ETA 00:06:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2173590697162 as seed for Random +# Warmup Iteration 1: Using SEED=2208385716796 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax @@ -175,7 +175,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -193,20 +193,13 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -334,7 +327,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -352,13 +345,20 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:34 +# Run progress: 9.09% complete, ETA 00:04:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2174656164517 as seed for Random -3587.689 ops/s -Iteration 1: 6163.138 ops/s +# Warmup Iteration 1: Using SEED=2209098174604 as seed for Random +5516.517 ops/s +Iteration 1: 8044.483 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 6163.138 ops/s + 8044.483 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:54 +# Run progress: 12.12% complete, ETA 00:04:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2187741682315 as seed for Random -4297.424 ops/s -Iteration 1: 5172.825 ops/s +# Warmup Iteration 1: Using SEED=2221978265522 as seed for Random +5457.857 ops/s +Iteration 1: 6627.185 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 5172.825 ops/s + 6627.185 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:00 +# Run progress: 15.15% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2200831510849 as seed for Random -1563.312 ops/s -Iteration 1: 2868.496 ops/s +# Warmup Iteration 1: Using SEED=2234815293607 as seed for Random +2623.592 ops/s +Iteration 1: 4054.108 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 2868.496 ops/s + 4054.108 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:00 +# Run progress: 18.18% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2213943912558 as seed for Random -104.484 ops/s -Iteration 1: 186.045 ops/s +# Warmup Iteration 1: Using SEED=2247667965067 as seed for Random +235.132 ops/s +Iteration 1: 407.162 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 186.045 ops/s + 407.162 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:57 +# Run progress: 21.21% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2227340444988 as seed for Random -1461.573 ops/s -Iteration 1: 2719.731 ops/s +# Warmup Iteration 1: Using SEED=2260634374787 as seed for Random +3024.132 ops/s +Iteration 1: 3485.940 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 2719.731 ops/s + 3485.940 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:51 +# Run progress: 24.24% complete, ETA 00:04:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2240490782796 as seed for Random -2431.528 ops/s -Iteration 1: 3340.400 ops/s +# Warmup Iteration 1: Using SEED=2273541054993 as seed for Random +3107.881 ops/s +Iteration 1: 4045.513 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 3340.400 ops/s + 4045.513 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:43 +# Run progress: 27.27% complete, ETA 00:04:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2253695172997 as seed for Random -2207.158 ops/s -Iteration 1: 3774.906 ops/s +# Warmup Iteration 1: Using SEED=2286453216020 as seed for Random +2971.024 ops/s +Iteration 1: 4975.077 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 3774.906 ops/s + 4975.077 ops/s # JMH version: 1.33 @@ -548,15 +548,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:35 +# Run progress: 30.30% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2266789948539 as seed for Random -2786.443 ops/s -Iteration 1: 4176.848 ops/s +# Warmup Iteration 1: Using SEED=2299351598819 as seed for Random +4645.615 ops/s +Iteration 1: 5714.070 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 4176.848 ops/s + 5714.070 ops/s # JMH version: 1.33 @@ -571,15 +571,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:25 +# Run progress: 33.33% complete, ETA 00:04:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2279887735898 as seed for Random -2578.246 ops/s -Iteration 1: 3796.129 ops/s +# Warmup Iteration 1: Using SEED=2312216784195 as seed for Random +4096.701 ops/s +Iteration 1: 5364.237 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 3796.129 ops/s + 5364.237 ops/s # JMH version: 1.33 @@ -594,15 +594,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:15 +# Run progress: 36.36% complete, ETA 00:04:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2293047863183 as seed for Random -1340.099 ops/s -Iteration 1: 2893.072 ops/s +# Warmup Iteration 1: Using SEED=2325056261953 as seed for Random +2603.521 ops/s +Iteration 1: 3665.946 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 2893.072 ops/s + 3665.946 ops/s # JMH version: 1.33 @@ -617,15 +617,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:04 +# Run progress: 39.39% complete, ETA 00:03:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2306189305829 as seed for Random -447.400 ops/s -Iteration 1: 831.390 ops/s +# Warmup Iteration 1: Using SEED=2337877900995 as seed for Random +617.887 ops/s +Iteration 1: 877.607 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 831.390 ops/s + 877.607 ops/s # JMH version: 1.33 @@ -640,12 +640,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:53 +# Run progress: 42.42% complete, ETA 00:03:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2319353549186 as seed for Random +# Warmup Iteration 1: Using SEED=2350736826669 as seed for Random -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@11bd065b with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { @@ -732,90 +732,30 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) at com.jsoniter.Codegen.gen(Codegen.java:78) ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@29dcfba8 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -828,93 +768,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53c44d0b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -932,84 +788,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3b0894b4 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1027,84 +808,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3d88c333 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1122,84 +828,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@56dca88 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1217,84 +848,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@52250b26 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1312,179 +868,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5378a318 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@58aeb444 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1502,84 +888,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3f0c4dc8 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1597,179 +908,29 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7956e2a3 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6a1b3847 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1787,84 +948,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@505cf006 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1882,84 +968,30 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@536909b1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) + at com.jsoniter.JsonIterator.read(JsonIterator.java:385) + at com.jsoniter.JsonIterator.read(JsonIterator.java:375) + at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) + at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) + +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -1977,84 +1009,9 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@61335f7e with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null + at com.jsoniter.Codegen$1.decode(Codegen.java:115) at com.jsoniter.JsonIterator.read(JsonIterator.java:385) at com.jsoniter.JsonIterator.read(JsonIterator.java:375) at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) @@ -2072,13 +1029,6 @@ return obj; at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null at com.jsoniter.Codegen$1.decode(Codegen.java:115) @@ -2115,15 +1065,15 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:29 +# Run progress: 45.45% complete, ETA 00:03:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2321335218913 as seed for Random -2403.639 ops/s -Iteration 1: 3524.612 ops/s +# Warmup Iteration 1: Using SEED=2352438970016 as seed for Random +3759.629 ops/s +Iteration 1: 4865.049 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 3524.612 ops/s + 4865.049 ops/s # JMH version: 1.33 @@ -2138,15 +1088,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:18 +# Run progress: 48.48% complete, ETA 00:03:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2334470421740 as seed for Random -1781.250 ops/s -Iteration 1: 3777.750 ops/s +# Warmup Iteration 1: Using SEED=2365269388623 as seed for Random +1749.145 ops/s +Iteration 1: 4309.427 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 3777.750 ops/s + 4309.427 ops/s # JMH version: 1.33 @@ -2161,15 +1111,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:08 +# Run progress: 51.52% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2347633729203 as seed for Random -1226.578 ops/s -Iteration 1: 2098.036 ops/s +# Warmup Iteration 1: Using SEED=2378174886692 as seed for Random +1974.850 ops/s +Iteration 1: 3251.009 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 2098.036 ops/s + 3251.009 ops/s # JMH version: 1.33 @@ -2184,15 +1134,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:58 +# Run progress: 54.55% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2360794917315 as seed for Random -260.065 ops/s -Iteration 1: 610.345 ops/s +# Warmup Iteration 1: Using SEED=2391014491442 as seed for Random +287.417 ops/s +Iteration 1: 625.223 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 610.345 ops/s + 625.223 ops/s # JMH version: 1.33 @@ -2207,15 +1157,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:47 +# Run progress: 57.58% complete, ETA 00:02:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2373962726282 as seed for Random -1552.697 ops/s -Iteration 1: 3339.533 ops/s +# Warmup Iteration 1: Using SEED=2403887325308 as seed for Random +1474.073 ops/s +Iteration 1: 3680.277 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 3339.533 ops/s + 3680.277 ops/s # JMH version: 1.33 @@ -2230,15 +1180,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:35 +# Run progress: 60.61% complete, ETA 00:02:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2387090995090 as seed for Random -569.602 ops/s -Iteration 1: 622.906 ops/s +# Warmup Iteration 1: Using SEED=2416748366321 as seed for Random +792.659 ops/s +Iteration 1: 3702.020 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 622.906 ops/s + 3702.020 ops/s # JMH version: 1.33 @@ -2253,15 +1203,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:24 +# Run progress: 63.64% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2400541162355 as seed for Random -557.788 ops/s -Iteration 1: 596.421 ops/s +# Warmup Iteration 1: Using SEED=2429642728910 as seed for Random +2053.318 ops/s +Iteration 1: 5199.240 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 596.421 ops/s + 5199.240 ops/s # JMH version: 1.33 @@ -2276,15 +1226,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:13 +# Run progress: 66.67% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2413838674037 as seed for Random -474.381 ops/s -Iteration 1: 1875.295 ops/s +# Warmup Iteration 1: Using SEED=2442522344090 as seed for Random +1213.168 ops/s +Iteration 1: 2721.133 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 1875.295 ops/s + 2721.133 ops/s # JMH version: 1.33 @@ -2299,15 +1249,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:01 +# Run progress: 69.70% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2427061214256 as seed for Random -244.986 ops/s -Iteration 1: 487.437 ops/s +# Warmup Iteration 1: Using SEED=2455372849055 as seed for Random +348.154 ops/s +Iteration 1: 537.440 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 487.437 ops/s + 537.440 ops/s # JMH version: 1.33 @@ -2322,15 +1272,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:49 +# Run progress: 72.73% complete, ETA 00:01:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2440267691764 as seed for Random -240.607 ops/s -Iteration 1: 774.534 ops/s +# Warmup Iteration 1: Using SEED=2468221255673 as seed for Random +723.143 ops/s +Iteration 1: 1217.609 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 774.534 ops/s + 1217.609 ops/s # JMH version: 1.33 @@ -2345,15 +1295,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:38 +# Run progress: 75.76% complete, ETA 00:01:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2453533675509 as seed for Random -271.026 ops/s -Iteration 1: 278.856 ops/s +# Warmup Iteration 1: Using SEED=2481074798323 as seed for Random +1844.745 ops/s +Iteration 1: 2784.259 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 278.856 ops/s + 2784.259 ops/s # JMH version: 1.33 @@ -2368,15 +1318,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:26 +# Run progress: 78.79% complete, ETA 00:01:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2466792652510 as seed for Random -324.938 ops/s -Iteration 1: 538.715 ops/s +# Warmup Iteration 1: Using SEED=2494061628747 as seed for Random +439.857 ops/s +Iteration 1: 590.736 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 538.715 ops/s + 590.736 ops/s # JMH version: 1.33 @@ -2391,15 +1341,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:13 +# Run progress: 81.82% complete, ETA 00:01:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2480030447063 as seed for Random -325.063 ops/s -Iteration 1: 486.079 ops/s +# Warmup Iteration 1: Using SEED=2506992946011 as seed for Random +998.911 ops/s +Iteration 1: 2850.443 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 486.079 ops/s + 2850.443 ops/s # JMH version: 1.33 @@ -2414,15 +1364,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:01 +# Run progress: 84.85% complete, ETA 00:01:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2493256814497 as seed for Random -1349.393 ops/s -Iteration 1: 2209.720 ops/s +# Warmup Iteration 1: Using SEED=2519904675436 as seed for Random +1642.084 ops/s +Iteration 1: 3097.399 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 2209.720 ops/s + 3097.399 ops/s # JMH version: 1.33 @@ -2437,15 +1387,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:49 +# Run progress: 87.88% complete, ETA 00:00:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2506403290450 as seed for Random -394.490 ops/s -Iteration 1: 542.150 ops/s +# Warmup Iteration 1: Using SEED=2532713763269 as seed for Random +488.983 ops/s +Iteration 1: 597.282 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 542.150 ops/s + 597.282 ops/s # JMH version: 1.33 @@ -2460,15 +1410,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:37 +# Run progress: 90.91% complete, ETA 00:00:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2519573852625 as seed for Random -281.755 ops/s -Iteration 1: 596.255 ops/s +# Warmup Iteration 1: Using SEED=2545650995197 as seed for Random +339.382 ops/s +Iteration 1: 645.077 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 596.255 ops/s + 645.077 ops/s # JMH version: 1.33 @@ -2485,13 +1435,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2532808381404 as seed for Random -2154.193 ops/s -Iteration 1: 3111.952 ops/s +# Warmup Iteration 1: Using SEED=2558532958878 as seed for Random +1913.358 ops/s +Iteration 1: 4186.443 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 3111.952 ops/s + 4186.443 ops/s # JMH version: 1.33 @@ -2508,16 +1458,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2545978517598 as seed for Random -1668.020 ops/s -Iteration 1: 2391.956 ops/s +# Warmup Iteration 1: Using SEED=2571349526672 as seed for Random +2859.334 ops/s +Iteration 1: 3797.361 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 2391.956 ops/s + 3797.361 ops/s -# Run complete. Total time: 00:06:51 +# Run complete. Total time: 00:06:41 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2526,34 +1476,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 5492.166 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 3720.105 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 6163.138 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 5172.825 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 2868.496 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 186.045 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 2719.731 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 3340.400 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 3774.906 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 4176.848 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 3796.129 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 2893.072 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 831.390 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 3524.612 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 3777.750 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 2098.036 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 610.345 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 3339.533 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 622.906 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 596.421 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 1875.295 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 487.437 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 774.534 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 278.856 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 538.715 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 486.079 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 2209.720 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 542.150 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 596.255 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 3111.952 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 2391.956 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 6262.039 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4731.451 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 8044.483 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 6627.185 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 4054.108 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 407.162 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 3485.940 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 4045.513 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 4975.077 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 5714.070 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 5364.237 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 3665.946 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 877.607 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 4865.049 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 4309.427 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 3251.009 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 625.223 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 3680.277 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 3702.020 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 5199.240 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2721.133 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 537.440 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 1217.609 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2784.259 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 590.736 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 2850.443 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 3097.399 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 597.282 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 645.077 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 4186.443 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 3797.361 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt index ad76a8a..16e2198 100644 --- a/output/users-ser-1-1.txt +++ b/output/users-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=95432926115 as seed for Random -421318.961 ops/s -Iteration 1: 552189.065 ops/s +# Warmup Iteration 1: Using SEED=176852379080 as seed for Random +730402.784 ops/s +Iteration 1: 801492.955 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 552189.065 ops/s + 801492.955 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:00 +# Run progress: 3.03% complete, ETA 00:06:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=108479624306 as seed for Random -268775.781 ops/s -Iteration 1: 455731.176 ops/s +# Warmup Iteration 1: Using SEED=189676020248 as seed for Random +479235.086 ops/s +Iteration 1: 605111.642 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 455731.176 ops/s + 605111.642 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:46 +# Run progress: 6.06% complete, ETA 00:06:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=121613312083 as seed for Random +# Warmup Iteration 1: Using SEED=202453547075 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -101,15 +101,13 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -122,14 +120,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 20 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -137,7 +127,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -371,7 +362,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -390,6 +382,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more @@ -406,15 +406,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:32 +# Run progress: 9.09% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=122567388010 as seed for Random -520598.949 ops/s -Iteration 1: 679970.164 ops/s +# Warmup Iteration 1: Using SEED=203164589698 as seed for Random +749962.225 ops/s +Iteration 1: 883524.168 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 679970.164 ops/s + 883524.168 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:52 +# Run progress: 12.12% complete, ETA 00:04:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=135673173096 as seed for Random -532009.501 ops/s -Iteration 1: 584038.113 ops/s +# Warmup Iteration 1: Using SEED=215966273415 as seed for Random +747443.926 ops/s +Iteration 1: 767974.263 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 584038.113 ops/s + 767974.263 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:59 +# Run progress: 15.15% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=148787402559 as seed for Random -355975.161 ops/s -Iteration 1: 553071.348 ops/s +# Warmup Iteration 1: Using SEED=228792551703 as seed for Random +420422.385 ops/s +Iteration 1: 638135.424 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 553071.348 ops/s + 638135.424 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:59 +# Run progress: 18.18% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=161894873414 as seed for Random -1952.802 ops/s -Iteration 1: 1307.719 ops/s +# Warmup Iteration 1: Using SEED=241615517059 as seed for Random +2437.809 ops/s +Iteration 1: 1327.259 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1307.719 ops/s + 1327.259 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:55 +# Run progress: 21.21% complete, ETA 00:04:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=174995912561 as seed for Random -213100.156 ops/s -Iteration 1: 273389.099 ops/s +# Warmup Iteration 1: Using SEED=254487067027 as seed for Random +352373.972 ops/s +Iteration 1: 416580.787 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 273389.099 ops/s + 416580.787 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:49 +# Run progress: 24.24% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=188068122131 as seed for Random -103133.460 ops/s -Iteration 1: 163499.770 ops/s +# Warmup Iteration 1: Using SEED=267357542292 as seed for Random +143939.059 ops/s +Iteration 1: 204228.493 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 163499.770 ops/s + 204228.493 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:42 +# Run progress: 27.27% complete, ETA 00:04:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=201158777408 as seed for Random -343075.842 ops/s -Iteration 1: 472252.570 ops/s +# Warmup Iteration 1: Using SEED=280197084497 as seed for Random +538301.870 ops/s +Iteration 1: 638762.491 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 472252.570 ops/s + 638762.491 ops/s # JMH version: 1.33 @@ -567,15 +567,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:33 +# Run progress: 30.30% complete, ETA 00:04:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=214307982450 as seed for Random -338541.101 ops/s -Iteration 1: 418097.369 ops/s +# Warmup Iteration 1: Using SEED=293093847541 as seed for Random +527626.859 ops/s +Iteration 1: 617521.972 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 418097.369 ops/s + 617521.972 ops/s # JMH version: 1.33 @@ -590,15 +590,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:24 +# Run progress: 33.33% complete, ETA 00:04:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=227353714500 as seed for Random -336818.663 ops/s -Iteration 1: 412804.977 ops/s +# Warmup Iteration 1: Using SEED=305947623445 as seed for Random +527735.297 ops/s +Iteration 1: 592238.407 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 412804.977 ops/s + 592238.407 ops/s # JMH version: 1.33 @@ -613,15 +613,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:13 +# Run progress: 36.36% complete, ETA 00:04:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=240423364883 as seed for Random -26332.181 ops/s -Iteration 1: 51486.839 ops/s +# Warmup Iteration 1: Using SEED=318899778294 as seed for Random +40378.086 ops/s +Iteration 1: 53583.169 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 51486.839 ops/s + 53583.169 ops/s # JMH version: 1.33 @@ -636,15 +636,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:03 +# Run progress: 39.39% complete, ETA 00:03:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=253466055228 as seed for Random -75042.167 ops/s -Iteration 1: 159427.397 ops/s +# Warmup Iteration 1: Using SEED=331727021293 as seed for Random +150551.828 ops/s +Iteration 1: 204851.561 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 159427.397 ops/s + 204851.561 ops/s # JMH version: 1.33 @@ -659,12 +659,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:52 +# Run progress: 42.42% complete, ETA 00:03:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=266550238190 as seed for Random +# Warmup Iteration 1: Using SEED=344525330308 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -719,53 +719,25 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -782,53 +754,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -845,53 +773,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -908,53 +792,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -971,53 +811,28 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1034,53 +849,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1097,117 +868,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1224,62 +887,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1296,53 +906,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1359,53 +925,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1422,53 +944,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1485,53 +963,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1548,53 +982,9 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1611,57 +1001,14 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) +java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null + at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1674,13 +1021,6 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more @@ -1697,15 +1037,15 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:26 +# Run progress: 45.45% complete, ETA 00:03:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=267669985914 as seed for Random -199437.580 ops/s -Iteration 1: 240520.758 ops/s +# Warmup Iteration 1: Using SEED=346212476730 as seed for Random +302666.050 ops/s +Iteration 1: 343855.418 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 240520.758 ops/s + 343855.418 ops/s # JMH version: 1.33 @@ -1720,15 +1060,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:16 +# Run progress: 48.48% complete, ETA 00:03:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=280769111043 as seed for Random -303734.964 ops/s -Iteration 1: 434984.630 ops/s +# Warmup Iteration 1: Using SEED=359016951045 as seed for Random +533000.298 ops/s +Iteration 1: 630186.029 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 434984.630 ops/s + 630186.029 ops/s # JMH version: 1.33 @@ -1743,15 +1083,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:06 +# Run progress: 51.52% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=293941146097 as seed for Random -127081.378 ops/s -Iteration 1: 174194.689 ops/s +# Warmup Iteration 1: Using SEED=371826480852 as seed for Random +279450.727 ops/s +Iteration 1: 339483.721 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 174194.689 ops/s + 339483.721 ops/s # JMH version: 1.33 @@ -1766,15 +1106,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:56 +# Run progress: 54.55% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=307042450913 as seed for Random -57493.950 ops/s -Iteration 1: 157592.502 ops/s +# Warmup Iteration 1: Using SEED=384611807963 as seed for Random +118035.803 ops/s +Iteration 1: 182611.822 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 157592.502 ops/s + 182611.822 ops/s # JMH version: 1.33 @@ -1789,15 +1129,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:45 +# Run progress: 57.58% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=320143274133 as seed for Random -93388.230 ops/s -Iteration 1: 219611.116 ops/s +# Warmup Iteration 1: Using SEED=397415950818 as seed for Random +327081.325 ops/s +Iteration 1: 399279.361 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 219611.116 ops/s + 399279.361 ops/s # JMH version: 1.33 @@ -1812,15 +1152,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:34 +# Run progress: 60.61% complete, ETA 00:02:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=333212806357 as seed for Random -76647.878 ops/s -Iteration 1: 117825.306 ops/s +# Warmup Iteration 1: Using SEED=410237161260 as seed for Random +142096.121 ops/s +Iteration 1: 178465.148 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 117825.306 ops/s + 178465.148 ops/s # JMH version: 1.33 @@ -1835,15 +1175,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:23 +# Run progress: 63.64% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=346366096049 as seed for Random -286739.980 ops/s -Iteration 1: 403279.551 ops/s +# Warmup Iteration 1: Using SEED=423080527731 as seed for Random +364706.325 ops/s +Iteration 1: 530290.827 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 403279.551 ops/s + 530290.827 ops/s # JMH version: 1.33 @@ -1858,15 +1198,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:12 +# Run progress: 66.67% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=359584929506 as seed for Random -195394.931 ops/s -Iteration 1: 344043.455 ops/s +# Warmup Iteration 1: Using SEED=435873499430 as seed for Random +262038.607 ops/s +Iteration 1: 468918.297 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 344043.455 ops/s + 468918.297 ops/s # JMH version: 1.33 @@ -1881,15 +1221,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:00 +# Run progress: 69.70% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=372761228191 as seed for Random -11645.064 ops/s -Iteration 1: 12759.097 ops/s +# Warmup Iteration 1: Using SEED=448697010242 as seed for Random +15872.627 ops/s +Iteration 1: 39253.429 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 12759.097 ops/s + 39253.429 ops/s # JMH version: 1.33 @@ -1904,15 +1244,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:48 +# Run progress: 72.73% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=385901262790 as seed for Random -31587.713 ops/s -Iteration 1: 42945.730 ops/s +# Warmup Iteration 1: Using SEED=461524725880 as seed for Random +40065.822 ops/s +Iteration 1: 46198.286 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 42945.730 ops/s + 46198.286 ops/s # JMH version: 1.33 @@ -1927,15 +1267,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:37 +# Run progress: 75.76% complete, ETA 00:01:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=398929995131 as seed for Random -97438.493 ops/s -Iteration 1: 244814.628 ops/s +# Warmup Iteration 1: Using SEED=474387410869 as seed for Random +174112.841 ops/s +Iteration 1: 274445.686 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 244814.628 ops/s + 274445.686 ops/s # JMH version: 1.33 @@ -1950,15 +1290,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:25 +# Run progress: 78.79% complete, ETA 00:01:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=412068251242 as seed for Random -21541.272 ops/s -Iteration 1: 37083.653 ops/s +# Warmup Iteration 1: Using SEED=487171297292 as seed for Random +86180.083 ops/s +Iteration 1: 142125.027 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 37083.653 ops/s + 142125.027 ops/s # JMH version: 1.33 @@ -1973,15 +1313,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:13 +# Run progress: 81.82% complete, ETA 00:01:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=425186530761 as seed for Random -201360.866 ops/s -Iteration 1: 282201.409 ops/s +# Warmup Iteration 1: Using SEED=499995358154 as seed for Random +255758.556 ops/s +Iteration 1: 356861.961 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 282201.409 ops/s + 356861.961 ops/s # JMH version: 1.33 @@ -1996,15 +1336,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:01 +# Run progress: 84.85% complete, ETA 00:01:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=438188887860 as seed for Random -218666.264 ops/s -Iteration 1: 281957.434 ops/s +# Warmup Iteration 1: Using SEED=512871004259 as seed for Random +369378.335 ops/s +Iteration 1: 395646.407 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 281957.434 ops/s + 395646.407 ops/s # JMH version: 1.33 @@ -2019,15 +1359,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:49 +# Run progress: 87.88% complete, ETA 00:00:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=451256851225 as seed for Random -19727.894 ops/s -Iteration 1: 20022.129 ops/s +# Warmup Iteration 1: Using SEED=525737317618 as seed for Random +11698.035 ops/s +Iteration 1: 73535.845 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 20022.129 ops/s + 73535.845 ops/s # JMH version: 1.33 @@ -2044,13 +1384,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=464371847011 as seed for Random -37018.577 ops/s -Iteration 1: 76892.530 ops/s +# Warmup Iteration 1: Using SEED=538530960354 as seed for Random +95412.625 ops/s +Iteration 1: 122943.033 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 76892.530 ops/s + 122943.033 ops/s # JMH version: 1.33 @@ -2067,13 +1407,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=477502890336 as seed for Random -12185.971 ops/s -Iteration 1: 26639.654 ops/s +# Warmup Iteration 1: Using SEED=551424513864 as seed for Random +26920.556 ops/s +Iteration 1: 54120.669 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 26639.654 ops/s + 54120.669 ops/s # JMH version: 1.33 @@ -2090,16 +1430,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=490613462763 as seed for Random -60878.642 ops/s -Iteration 1: 105217.303 ops/s +# Warmup Iteration 1: Using SEED=564263509320 as seed for Random +111922.501 ops/s +Iteration 1: 166860.691 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 105217.303 ops/s + 166860.691 ops/s -# Run complete. Total time: 00:06:48 +# Run complete. Total time: 00:06:40 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2108,34 +1448,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 552189.065 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 455731.176 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 679970.164 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 584038.113 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 553071.348 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 1307.719 ops/s -c.g.f.j.databind.Serialization.genson thrpt 273389.099 ops/s -c.g.f.j.databind.Serialization.gson thrpt 163499.770 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 472252.570 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 418097.369 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 412804.977 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 51486.839 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 159427.397 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 240520.758 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 434984.630 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 174194.689 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 157592.502 ops/s -c.g.f.j.stream.Serialization.genson thrpt 219611.116 ops/s -c.g.f.j.stream.Serialization.gson thrpt 117825.306 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 403279.551 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 344043.455 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 12759.097 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 42945.730 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 244814.628 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 37083.653 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 282201.409 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 281957.434 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 20022.129 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 76892.530 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 26639.654 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 105217.303 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 801492.955 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 605111.642 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 883524.168 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 767974.263 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 638135.424 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 1327.259 ops/s +c.g.f.j.databind.Serialization.genson thrpt 416580.787 ops/s +c.g.f.j.databind.Serialization.gson thrpt 204228.493 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 638762.491 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 617521.972 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 592238.407 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 53583.169 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 204851.561 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 343855.418 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 630186.029 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 339483.721 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 182611.822 ops/s +c.g.f.j.stream.Serialization.genson thrpt 399279.361 ops/s +c.g.f.j.stream.Serialization.gson thrpt 178465.148 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 530290.827 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 468918.297 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 39253.429 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 46198.286 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 274445.686 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 142125.027 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 356861.961 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 395646.407 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 73535.845 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 122943.033 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 54120.669 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 166860.691 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt index 47c660a..2dd67da 100644 --- a/output/users-ser-1-10.txt +++ b/output/users-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=913528160967 as seed for Random -59250.380 ops/s -Iteration 1: 67172.794 ops/s +# Warmup Iteration 1: Using SEED=978405185810 as seed for Random +74737.049 ops/s +Iteration 1: 79597.056 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 67172.794 ops/s + 79597.056 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:02 +# Run progress: 3.03% complete, ETA 00:06:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=926688108262 as seed for Random -38093.873 ops/s -Iteration 1: 52326.883 ops/s +# Warmup Iteration 1: Using SEED=991331211710 as seed for Random +64513.646 ops/s +Iteration 1: 77466.504 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 52326.883 ops/s + 77466.504 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:48 +# Run progress: 6.06% complete, ETA 00:06:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=939817654123 as seed for Random +# Warmup Iteration 1: Using SEED=1004176029023 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -107,7 +107,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -121,7 +122,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -140,6 +142,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -301,8 +311,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -321,14 +330,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -376,8 +377,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -406,15 +406,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:33 +# Run progress: 9.09% complete, ETA 00:04:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=940787896780 as seed for Random -70714.922 ops/s -Iteration 1: 74094.071 ops/s +# Warmup Iteration 1: Using SEED=1004893607939 as seed for Random +84702.257 ops/s +Iteration 1: 93209.858 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 74094.071 ops/s + 93209.858 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:53 +# Run progress: 12.12% complete, ETA 00:04:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=954007697198 as seed for Random -58278.077 ops/s -Iteration 1: 65635.006 ops/s +# Warmup Iteration 1: Using SEED=1017675787807 as seed for Random +80138.117 ops/s +Iteration 1: 88086.027 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 65635.006 ops/s + 88086.027 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:00 +# Run progress: 15.15% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=967083433947 as seed for Random -24539.612 ops/s -Iteration 1: 39053.425 ops/s +# Warmup Iteration 1: Using SEED=1030593123621 as seed for Random +47765.992 ops/s +Iteration 1: 65455.296 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 39053.425 ops/s + 65455.296 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:00 +# Run progress: 18.18% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=980144430626 as seed for Random -470.701 ops/s -Iteration 1: 313.901 ops/s +# Warmup Iteration 1: Using SEED=1043436029854 as seed for Random +597.126 ops/s +Iteration 1: 372.739 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 313.901 ops/s + 372.739 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:56 +# Run progress: 21.21% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=993318437871 as seed for Random -32389.488 ops/s -Iteration 1: 42502.682 ops/s +# Warmup Iteration 1: Using SEED=1056332345128 as seed for Random +50883.282 ops/s +Iteration 1: 61382.386 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 42502.682 ops/s + 61382.386 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:50 +# Run progress: 24.24% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1006407152358 as seed for Random -11214.086 ops/s -Iteration 1: 16842.919 ops/s +# Warmup Iteration 1: Using SEED=1069178020653 as seed for Random +18561.542 ops/s +Iteration 1: 23238.183 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 16842.919 ops/s + 23238.183 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:42 +# Run progress: 27.27% complete, ETA 00:04:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1019523699068 as seed for Random -47601.635 ops/s -Iteration 1: 57082.824 ops/s +# Warmup Iteration 1: Using SEED=1082060712080 as seed for Random +67946.455 ops/s +Iteration 1: 75312.178 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 57082.824 ops/s + 75312.178 ops/s # JMH version: 1.33 @@ -567,15 +567,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:34 +# Run progress: 30.30% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1032640101201 as seed for Random -43437.156 ops/s -Iteration 1: 54374.433 ops/s +# Warmup Iteration 1: Using SEED=1094926793504 as seed for Random +69384.214 ops/s +Iteration 1: 78989.185 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 54374.433 ops/s + 78989.185 ops/s # JMH version: 1.33 @@ -590,15 +590,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:24 +# Run progress: 33.33% complete, ETA 00:04:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1045716180920 as seed for Random -45854.039 ops/s -Iteration 1: 54079.898 ops/s +# Warmup Iteration 1: Using SEED=1107761026564 as seed for Random +63498.241 ops/s +Iteration 1: 72033.778 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 54079.898 ops/s + 72033.778 ops/s # JMH version: 1.33 @@ -613,15 +613,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:14 +# Run progress: 36.36% complete, ETA 00:04:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1058817276128 as seed for Random -3628.162 ops/s -Iteration 1: 5873.697 ops/s +# Warmup Iteration 1: Using SEED=1120578231277 as seed for Random +4591.512 ops/s +Iteration 1: 5787.528 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 5873.697 ops/s + 5787.528 ops/s # JMH version: 1.33 @@ -636,15 +636,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:03 +# Run progress: 39.39% complete, ETA 00:03:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1071960360963 as seed for Random -12138.087 ops/s -Iteration 1: 20884.667 ops/s +# Warmup Iteration 1: Using SEED=1133413997035 as seed for Random +17249.925 ops/s +Iteration 1: 23643.451 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 20884.667 ops/s + 23643.451 ops/s # JMH version: 1.33 @@ -659,12 +659,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:52 +# Run progress: 42.42% complete, ETA 00:03:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1085078238841 as seed for Random +# Warmup Iteration 1: Using SEED=1146232224611 as seed for Random -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -720,44 +720,53 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 37 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -774,9 +783,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -793,9 +846,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -812,9 +909,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -831,9 +972,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -850,12 +1035,56 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) @@ -869,9 +1098,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -888,9 +1161,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -907,9 +1224,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -926,9 +1287,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -945,9 +1350,116 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -964,9 +1476,62 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -983,9 +1548,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1002,9 +1611,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1021,6 +1674,13 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more @@ -1037,15 +1697,15 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:28 +# Run progress: 45.45% complete, ETA 00:03:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1087038780103 as seed for Random -18101.715 ops/s -Iteration 1: 21211.648 ops/s +# Warmup Iteration 1: Using SEED=1147037193269 as seed for Random +28843.713 ops/s +Iteration 1: 34448.032 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 21211.648 ops/s + 34448.032 ops/s # JMH version: 1.33 @@ -1060,15 +1720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:18 +# Run progress: 48.48% complete, ETA 00:03:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1100033049853 as seed for Random -31580.671 ops/s -Iteration 1: 52816.810 ops/s +# Warmup Iteration 1: Using SEED=1159879696769 as seed for Random +45628.495 ops/s +Iteration 1: 64850.642 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 52816.810 ops/s + 64850.642 ops/s # JMH version: 1.33 @@ -1083,15 +1743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:08 +# Run progress: 51.52% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1113202600494 as seed for Random -17245.479 ops/s -Iteration 1: 28833.470 ops/s +# Warmup Iteration 1: Using SEED=1172817105007 as seed for Random +29641.834 ops/s +Iteration 1: 37250.991 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 28833.470 ops/s + 37250.991 ops/s # JMH version: 1.33 @@ -1106,15 +1766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:57 +# Run progress: 54.55% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1126300114696 as seed for Random -9751.065 ops/s -Iteration 1: 20490.950 ops/s +# Warmup Iteration 1: Using SEED=1185694283432 as seed for Random +15697.121 ops/s +Iteration 1: 28495.126 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 20490.950 ops/s + 28495.126 ops/s # JMH version: 1.33 @@ -1129,15 +1789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:46 +# Run progress: 57.58% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1139382141615 as seed for Random -20138.415 ops/s -Iteration 1: 35386.975 ops/s +# Warmup Iteration 1: Using SEED=1198520017708 as seed for Random +34859.192 ops/s +Iteration 1: 52465.627 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 35386.975 ops/s + 52465.627 ops/s # JMH version: 1.33 @@ -1152,15 +1812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:35 +# Run progress: 60.61% complete, ETA 00:02:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1152523008895 as seed for Random -7148.825 ops/s -Iteration 1: 10943.992 ops/s +# Warmup Iteration 1: Using SEED=1211360684336 as seed for Random +12848.583 ops/s +Iteration 1: 17157.451 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 10943.992 ops/s + 17157.451 ops/s # JMH version: 1.33 @@ -1175,15 +1835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:24 +# Run progress: 63.64% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1165650557580 as seed for Random -30499.774 ops/s -Iteration 1: 53411.998 ops/s +# Warmup Iteration 1: Using SEED=1224268359292 as seed for Random +47665.429 ops/s +Iteration 1: 69233.397 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 53411.998 ops/s + 69233.397 ops/s # JMH version: 1.33 @@ -1198,15 +1858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:12 +# Run progress: 66.67% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1178780525040 as seed for Random -41710.201 ops/s -Iteration 1: 59513.426 ops/s +# Warmup Iteration 1: Using SEED=1237178613736 as seed for Random +65044.031 ops/s +Iteration 1: 79757.597 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 59513.426 ops/s + 79757.597 ops/s # JMH version: 1.33 @@ -1221,15 +1881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:01 +# Run progress: 69.70% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1191927240228 as seed for Random -1311.687 ops/s -Iteration 1: 4914.454 ops/s +# Warmup Iteration 1: Using SEED=1250020149959 as seed for Random +3246.426 ops/s +Iteration 1: 5056.753 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 4914.454 ops/s + 5056.753 ops/s # JMH version: 1.33 @@ -1244,15 +1904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:49 +# Run progress: 72.73% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1205059887940 as seed for Random -1844.938 ops/s -Iteration 1: 4292.226 ops/s +# Warmup Iteration 1: Using SEED=1262857916945 as seed for Random +4530.038 ops/s +Iteration 1: 5084.531 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 4292.226 ops/s + 5084.531 ops/s # JMH version: 1.33 @@ -1267,15 +1927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:37 +# Run progress: 75.76% complete, ETA 00:01:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1218149192965 as seed for Random -7343.347 ops/s -Iteration 1: 23540.167 ops/s +# Warmup Iteration 1: Using SEED=1275708548994 as seed for Random +22009.419 ops/s +Iteration 1: 44409.359 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 23540.167 ops/s + 44409.359 ops/s # JMH version: 1.33 @@ -1290,15 +1950,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:25 +# Run progress: 78.79% complete, ETA 00:01:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1231334291041 as seed for Random -2879.865 ops/s -Iteration 1: 4284.349 ops/s +# Warmup Iteration 1: Using SEED=1288607449048 as seed for Random +2734.603 ops/s +Iteration 1: 10462.353 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 4284.349 ops/s + 10462.353 ops/s # JMH version: 1.33 @@ -1313,15 +1973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:13 +# Run progress: 81.82% complete, ETA 00:01:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1244433654353 as seed for Random -17266.436 ops/s -Iteration 1: 29617.463 ops/s +# Warmup Iteration 1: Using SEED=1301413441911 as seed for Random +25632.528 ops/s +Iteration 1: 39776.630 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 29617.463 ops/s + 39776.630 ops/s # JMH version: 1.33 @@ -1336,15 +1996,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:01 +# Run progress: 84.85% complete, ETA 00:00:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1257622411269 as seed for Random -18995.488 ops/s -Iteration 1: 22902.790 ops/s +# Warmup Iteration 1: Using SEED=1314283906025 as seed for Random +44882.424 ops/s +Iteration 1: 50157.921 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 22902.790 ops/s + 50157.921 ops/s # JMH version: 1.33 @@ -1359,15 +2019,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:49 +# Run progress: 87.88% complete, ETA 00:00:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1270802771391 as seed for Random -2555.126 ops/s -Iteration 1: 5123.611 ops/s +# Warmup Iteration 1: Using SEED=1327136203862 as seed for Random +4891.997 ops/s +Iteration 1: 7936.943 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 5123.611 ops/s + 7936.943 ops/s # JMH version: 1.33 @@ -1382,15 +2042,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:37 +# Run progress: 90.91% complete, ETA 00:00:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1283972494883 as seed for Random -4194.508 ops/s -Iteration 1: 7275.603 ops/s +# Warmup Iteration 1: Using SEED=1340007389909 as seed for Random +8141.361 ops/s +Iteration 1: 10248.965 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 7275.603 ops/s + 10248.965 ops/s # JMH version: 1.33 @@ -1407,13 +2067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1297036174555 as seed for Random -1423.935 ops/s -Iteration 1: 1817.877 ops/s +# Warmup Iteration 1: Using SEED=1352895987543 as seed for Random +2876.574 ops/s +Iteration 1: 4961.084 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 1817.877 ops/s + 4961.084 ops/s # JMH version: 1.33 @@ -1430,16 +2090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1310161206664 as seed for Random -6051.081 ops/s -Iteration 1: 9738.842 ops/s +# Warmup Iteration 1: Using SEED=1365835095621 as seed for Random +9020.076 ops/s +Iteration 1: 14530.880 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 9738.842 ops/s + 14530.880 ops/s -# Run complete. Total time: 00:06:49 +# Run complete. Total time: 00:06:40 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1448,34 +2108,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 67172.794 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 52326.883 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 74094.071 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 65635.006 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 39053.425 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 313.901 ops/s -c.g.f.j.databind.Serialization.genson thrpt 42502.682 ops/s -c.g.f.j.databind.Serialization.gson thrpt 16842.919 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 57082.824 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 54374.433 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 54079.898 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 5873.697 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 20884.667 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 21211.648 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 52816.810 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 28833.470 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 20490.950 ops/s -c.g.f.j.stream.Serialization.genson thrpt 35386.975 ops/s -c.g.f.j.stream.Serialization.gson thrpt 10943.992 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 53411.998 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 59513.426 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 4914.454 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 4292.226 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 23540.167 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 4284.349 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 29617.463 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 22902.790 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 5123.611 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 7275.603 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 1817.877 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 9738.842 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 79597.056 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 77466.504 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 93209.858 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 88086.027 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 65455.296 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 372.739 ops/s +c.g.f.j.databind.Serialization.genson thrpt 61382.386 ops/s +c.g.f.j.databind.Serialization.gson thrpt 23238.183 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 75312.178 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 78989.185 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 72033.778 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 5787.528 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 23643.451 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 34448.032 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 64850.642 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 37250.991 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 28495.126 ops/s +c.g.f.j.stream.Serialization.genson thrpt 52465.627 ops/s +c.g.f.j.stream.Serialization.gson thrpt 17157.451 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 69233.397 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 79757.597 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 5056.753 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 5084.531 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 44409.359 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 10462.353 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 39776.630 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 50157.921 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 7936.943 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 10248.965 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 4961.084 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 14530.880 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt index 261131f..8ccad16 100644 --- a/output/users-ser-1-100.txt +++ b/output/users-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1735153229569 as seed for Random -5866.743 ops/s -Iteration 1: 6791.925 ops/s +# Warmup Iteration 1: Using SEED=1780912485832 as seed for Random +8025.871 ops/s +Iteration 1: 8900.705 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 6791.925 ops/s + 8900.705 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:04 +# Run progress: 3.03% complete, ETA 00:06:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1748347142780 as seed for Random -4698.479 ops/s -Iteration 1: 5859.197 ops/s +# Warmup Iteration 1: Using SEED=1793855760253 as seed for Random +6686.241 ops/s +Iteration 1: 7873.611 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 5859.197 ops/s + 7873.611 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:48 +# Run progress: 6.06% complete, ETA 00:06:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1761418354669 as seed for Random +# Warmup Iteration 1: Using SEED=1806689932518 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -161,7 +161,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -180,6 +181,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -207,7 +216,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -221,13 +231,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -241,13 +248,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -261,13 +265,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -281,13 +282,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -301,13 +299,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -321,13 +316,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -341,14 +333,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -362,8 +350,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -382,14 +369,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more @@ -406,15 +385,15 @@ Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:32 +# Run progress: 9.09% complete, ETA 00:04:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1762392138324 as seed for Random -6467.899 ops/s -Iteration 1: 7799.696 ops/s +# Warmup Iteration 1: Using SEED=1807422260558 as seed for Random +8807.965 ops/s +Iteration 1: 9810.912 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 7799.696 ops/s + 9810.912 ops/s # JMH version: 1.33 @@ -429,15 +408,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:52 +# Run progress: 12.12% complete, ETA 00:04:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1775542339710 as seed for Random -6736.753 ops/s -Iteration 1: 7059.481 ops/s +# Warmup Iteration 1: Using SEED=1820344871443 as seed for Random +8611.022 ops/s +Iteration 1: 9274.994 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 7059.481 ops/s + 9274.994 ops/s # JMH version: 1.33 @@ -452,15 +431,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:00 +# Run progress: 15.15% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1788695836529 as seed for Random -1896.302 ops/s -Iteration 1: 2886.763 ops/s +# Warmup Iteration 1: Using SEED=1833194498937 as seed for Random +2220.688 ops/s +Iteration 1: 3350.527 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 2886.763 ops/s + 3350.527 ops/s # JMH version: 1.33 @@ -475,15 +454,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:00 +# Run progress: 18.18% complete, ETA 00:04:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1801804750722 as seed for Random -86.685 ops/s -Iteration 1: 94.398 ops/s +# Warmup Iteration 1: Using SEED=1846047574193 as seed for Random +148.678 ops/s +Iteration 1: 130.282 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 94.398 ops/s + 130.282 ops/s # JMH version: 1.33 @@ -498,15 +477,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:58 +# Run progress: 21.21% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1815325130179 as seed for Random -3612.132 ops/s -Iteration 1: 4439.506 ops/s +# Warmup Iteration 1: Using SEED=1859228091420 as seed for Random +4806.854 ops/s +Iteration 1: 5692.445 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 4439.506 ops/s + 5692.445 ops/s # JMH version: 1.33 @@ -521,15 +500,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:51 +# Run progress: 24.24% complete, ETA 00:04:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1828515351911 as seed for Random -1249.056 ops/s -Iteration 1: 1607.700 ops/s +# Warmup Iteration 1: Using SEED=1872054876683 as seed for Random +1778.815 ops/s +Iteration 1: 2175.275 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1607.700 ops/s + 2175.275 ops/s # JMH version: 1.33 @@ -544,15 +523,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:44 +# Run progress: 27.27% complete, ETA 00:04:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1841708813361 as seed for Random -4982.651 ops/s -Iteration 1: 5581.785 ops/s +# Warmup Iteration 1: Using SEED=1884961435148 as seed for Random +5699.868 ops/s +Iteration 1: 7212.827 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 5581.785 ops/s + 7212.827 ops/s # JMH version: 1.33 @@ -567,15 +546,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:35 +# Run progress: 30.30% complete, ETA 00:04:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1854805918534 as seed for Random -4037.598 ops/s -Iteration 1: 5042.288 ops/s +# Warmup Iteration 1: Using SEED=1897886951393 as seed for Random +6439.857 ops/s +Iteration 1: 7303.869 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 5042.288 ops/s + 7303.869 ops/s # JMH version: 1.33 @@ -590,15 +569,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:25 +# Run progress: 33.33% complete, ETA 00:04:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1867936933850 as seed for Random -4885.869 ops/s -Iteration 1: 5710.241 ops/s +# Warmup Iteration 1: Using SEED=1910697130804 as seed for Random +6529.267 ops/s +Iteration 1: 7774.972 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 5710.241 ops/s + 7774.972 ops/s # JMH version: 1.33 @@ -613,15 +592,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:15 +# Run progress: 36.36% complete, ETA 00:04:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1881033521941 as seed for Random -452.291 ops/s -Iteration 1: 566.873 ops/s +# Warmup Iteration 1: Using SEED=1923644467066 as seed for Random +477.436 ops/s +Iteration 1: 585.806 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 566.873 ops/s + 585.806 ops/s # JMH version: 1.33 @@ -636,15 +615,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:04 +# Run progress: 39.39% complete, ETA 00:03:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1894176230822 as seed for Random -1352.170 ops/s -Iteration 1: 1937.029 ops/s +# Warmup Iteration 1: Using SEED=1936527063080 as seed for Random +1624.324 ops/s +Iteration 1: 2204.422 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 1937.029 ops/s + 2204.422 ops/s # JMH version: 1.33 @@ -659,9 +638,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:53 +# Run progress: 42.42% complete, ETA 00:03:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1907370995229 as seed for Random +# Warmup Iteration 1: Using SEED=1949364104606 as seed for Random com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) @@ -706,7 +685,8 @@ stream.writeVal((java.lang.String)e); at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -725,7 +705,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e at javassist.ClassPool.makeClass(ClassPool.java:814) at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more + ... 37 more com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { @@ -790,7 +770,7 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { java.util.List list = (java.util.List)obj; int size = list.size(); @@ -845,44 +825,53 @@ stream.writeVal((java.lang.String)e); at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) at com.jsoniter.output.Codegen.gen(Codegen.java:102) ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -899,9 +888,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -918,9 +951,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -937,12 +1014,56 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) @@ -956,9 +1077,116 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) + at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) + at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:568) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) + at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -975,9 +1203,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -994,9 +1266,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1013,9 +1329,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1032,14 +1392,57 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -1052,9 +1455,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1071,9 +1518,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more + +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1090,9 +1581,53 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) + at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) + at javassist.ClassPool.makeClass(ClassPool.java:837) + at javassist.ClassPool.makeClass(ClassPool.java:814) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) +com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa +public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { +java.util.List list = (java.util.List)obj; +int size = list.size(); +if (size == 0) { return; } +java.lang.Object e = list.get(0); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +for (int i = 1; i < size; i++) { +stream.write(','); +e = list.get(i); +if (e == null) { stream.writeNull(); } else { +stream.writeVal((java.lang.String)e); +} +} +} + + at com.jsoniter.output.Codegen.gen(Codegen.java:110) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) + at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) + at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) + at com.jsoniter.output.Codegen.genSource(Codegen.java:222) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) + at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) + at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) + at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) + at com.jsoniter.output.Codegen.genSource(Codegen.java:227) + at com.jsoniter.output.Codegen.gen(Codegen.java:98) + at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) @@ -1109,6 +1644,22 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) +Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) + at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) + at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) + at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) + at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) + at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) + at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) + at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) + at javassist.ClassPool.toClass(ClassPool.java:1240) + at javassist.ClassPool.toClass(ClassPool.java:1098) + at javassist.ClassPool.toClass(ClassPool.java:1056) + at javassist.CtClass.toClass(CtClass.java:1298) + at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) + at com.jsoniter.output.Codegen.gen(Codegen.java:102) + ... 36 more @@ -1125,15 +1676,15 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:29 +# Run progress: 45.45% complete, ETA 00:03:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1909391329367 as seed for Random -1397.144 ops/s -Iteration 1: 1776.154 ops/s +# Warmup Iteration 1: Using SEED=1950189520302 as seed for Random +1876.891 ops/s +Iteration 1: 1968.551 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 1776.154 ops/s + 1968.551 ops/s # JMH version: 1.33 @@ -1148,15 +1699,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:19 +# Run progress: 48.48% complete, ETA 00:03:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1922512626015 as seed for Random -2382.614 ops/s -Iteration 1: 5267.814 ops/s +# Warmup Iteration 1: Using SEED=1963026197482 as seed for Random +3076.019 ops/s +Iteration 1: 6842.364 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 5267.814 ops/s + 6842.364 ops/s # JMH version: 1.33 @@ -1171,15 +1722,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:08 +# Run progress: 51.52% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1935638206478 as seed for Random -1944.938 ops/s -Iteration 1: 2720.322 ops/s +# Warmup Iteration 1: Using SEED=1975848566534 as seed for Random +2729.378 ops/s +Iteration 1: 3786.351 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2720.322 ops/s + 3786.351 ops/s # JMH version: 1.33 @@ -1194,15 +1745,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:58 +# Run progress: 54.55% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1948804966702 as seed for Random -1102.402 ops/s -Iteration 1: 2138.322 ops/s +# Warmup Iteration 1: Using SEED=1988681453169 as seed for Random +2060.993 ops/s +Iteration 1: 3054.637 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 2138.322 ops/s + 3054.637 ops/s # JMH version: 1.33 @@ -1217,15 +1768,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:47 +# Run progress: 57.58% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1961965308572 as seed for Random -2343.192 ops/s -Iteration 1: 3777.333 ops/s +# Warmup Iteration 1: Using SEED=2001544899673 as seed for Random +2462.067 ops/s +Iteration 1: 5189.729 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 3777.333 ops/s + 5189.729 ops/s # JMH version: 1.33 @@ -1240,15 +1791,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:36 +# Run progress: 60.61% complete, ETA 00:02:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1975197300839 as seed for Random -443.942 ops/s -Iteration 1: 1050.019 ops/s +# Warmup Iteration 1: Using SEED=2014411757608 as seed for Random +1261.303 ops/s +Iteration 1: 1680.920 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 1050.019 ops/s + 1680.920 ops/s # JMH version: 1.33 @@ -1263,15 +1814,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:24 +# Run progress: 63.64% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1988336653083 as seed for Random -3182.656 ops/s -Iteration 1: 5465.754 ops/s +# Warmup Iteration 1: Using SEED=2027269371688 as seed for Random +5679.724 ops/s +Iteration 1: 7256.421 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 5465.754 ops/s + 7256.421 ops/s # JMH version: 1.33 @@ -1286,15 +1837,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:13 +# Run progress: 66.67% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2001413376493 as seed for Random -3337.922 ops/s -Iteration 1: 5768.823 ops/s +# Warmup Iteration 1: Using SEED=2040121003719 as seed for Random +5876.968 ops/s +Iteration 1: 7425.025 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 5768.823 ops/s + 7425.025 ops/s # JMH version: 1.33 @@ -1309,15 +1860,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:01 +# Run progress: 69.70% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2014669585116 as seed for Random -379.399 ops/s -Iteration 1: 523.366 ops/s +# Warmup Iteration 1: Using SEED=2053015693985 as seed for Random +410.642 ops/s +Iteration 1: 541.674 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 523.366 ops/s + 541.674 ops/s # JMH version: 1.33 @@ -1332,15 +1883,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:49 +# Run progress: 72.73% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2027882136157 as seed for Random -263.249 ops/s -Iteration 1: 555.488 ops/s +# Warmup Iteration 1: Using SEED=2065912727176 as seed for Random +345.338 ops/s +Iteration 1: 510.424 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 555.488 ops/s + 510.424 ops/s # JMH version: 1.33 @@ -1355,15 +1906,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:37 +# Run progress: 75.76% complete, ETA 00:01:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2041023226879 as seed for Random -1044.741 ops/s -Iteration 1: 2098.230 ops/s +# Warmup Iteration 1: Using SEED=2078794455065 as seed for Random +1547.318 ops/s +Iteration 1: 2553.755 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 2098.230 ops/s + 2553.755 ops/s # JMH version: 1.33 @@ -1378,15 +1929,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:25 +# Run progress: 78.79% complete, ETA 00:01:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2054142266907 as seed for Random -329.621 ops/s -Iteration 1: 786.623 ops/s +# Warmup Iteration 1: Using SEED=2091726706763 as seed for Random +418.293 ops/s +Iteration 1: 885.902 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 786.623 ops/s + 885.902 ops/s # JMH version: 1.33 @@ -1401,15 +1952,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:13 +# Run progress: 81.82% complete, ETA 00:01:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2067400028914 as seed for Random -667.329 ops/s -Iteration 1: 2885.839 ops/s +# Warmup Iteration 1: Using SEED=2104575225361 as seed for Random +2861.462 ops/s +Iteration 1: 3725.550 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 2885.839 ops/s + 3725.550 ops/s # JMH version: 1.33 @@ -1424,15 +1975,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:01 +# Run progress: 84.85% complete, ETA 00:01:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2080506582819 as seed for Random -1916.157 ops/s -Iteration 1: 2285.806 ops/s +# Warmup Iteration 1: Using SEED=2117446529570 as seed for Random +2343.229 ops/s +Iteration 1: 2532.008 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 2285.806 ops/s + 2532.008 ops/s # JMH version: 1.33 @@ -1447,15 +1998,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:49 +# Run progress: 87.88% complete, ETA 00:00:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2093587177055 as seed for Random -359.608 ops/s -Iteration 1: 703.150 ops/s +# Warmup Iteration 1: Using SEED=2130338196744 as seed for Random +415.083 ops/s +Iteration 1: 745.206 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 703.150 ops/s + 745.206 ops/s # JMH version: 1.33 @@ -1470,15 +2021,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:37 +# Run progress: 90.91% complete, ETA 00:00:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2106772084159 as seed for Random -331.836 ops/s -Iteration 1: 538.773 ops/s +# Warmup Iteration 1: Using SEED=2143267231308 as seed for Random +750.396 ops/s +Iteration 1: 852.079 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 538.773 ops/s + 852.079 ops/s # JMH version: 1.33 @@ -1495,13 +2046,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2119923569120 as seed for Random -154.487 ops/s -Iteration 1: 415.838 ops/s +# Warmup Iteration 1: Using SEED=2156188364931 as seed for Random +279.238 ops/s +Iteration 1: 433.147 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 415.838 ops/s + 433.147 ops/s # JMH version: 1.33 @@ -1518,16 +2069,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2133291956254 as seed for Random -648.425 ops/s -Iteration 1: 893.210 ops/s +# Warmup Iteration 1: Using SEED=2169130320797 as seed for Random +1053.357 ops/s +Iteration 1: 1331.551 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 893.210 ops/s + 1331.551 ops/s -# Run complete. Total time: 00:06:51 +# Run complete. Total time: 00:06:41 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1536,34 +2087,34 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 6791.925 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 5859.197 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 7799.696 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 7059.481 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 2886.763 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 94.398 ops/s -c.g.f.j.databind.Serialization.genson thrpt 4439.506 ops/s -c.g.f.j.databind.Serialization.gson thrpt 1607.700 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 5581.785 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 5042.288 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 5710.241 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 566.873 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 1937.029 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 1776.154 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 5267.814 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 2720.322 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2138.322 ops/s -c.g.f.j.stream.Serialization.genson thrpt 3777.333 ops/s -c.g.f.j.stream.Serialization.gson thrpt 1050.019 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 5465.754 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 5768.823 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 523.366 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 555.488 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2098.230 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 786.623 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 2885.839 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 2285.806 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 703.150 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 538.773 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 415.838 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 893.210 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 8900.705 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 7873.611 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 9810.912 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 9274.994 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 3350.527 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 130.282 ops/s +c.g.f.j.databind.Serialization.genson thrpt 5692.445 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2175.275 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 7212.827 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 7303.869 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 7774.972 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 585.806 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 2204.422 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 1968.551 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 6842.364 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 3786.351 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 3054.637 ops/s +c.g.f.j.stream.Serialization.genson thrpt 5189.729 ops/s +c.g.f.j.stream.Serialization.gson thrpt 1680.920 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 7256.421 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 7425.025 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 541.674 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 510.424 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2553.755 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 885.902 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 3725.550 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 2532.008 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 745.206 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 852.079 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 433.147 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 1331.551 ops/s From a913893a803ededfef6df337558f77d79cfd3e90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=B6zkan=20pakdil?= Date: Thu, 27 Oct 2022 17:21:59 +0100 Subject: [PATCH 18/42] Update gradle.yml testing jdk8 --- .github/workflows/gradle.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index f42e37a..a8bb843 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -19,10 +19,10 @@ jobs: - uses: actions/checkout@v3 with: token: ${{ secrets.TOKEN_GIT }} - - name: Set up JDK 17 + - name: Set up JDK 8 uses: actions/setup-java@v3 with: - java-version: '17' + java-version: '8' distribution: 'temurin' - name: Build with Gradle uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1 @@ -35,4 +35,4 @@ jobs: ./toMd.sh ../index.md - uses: stefanzweifel/git-auto-commit-action@v4 with: - commit_message: result adding back to repo [skip ci] another test \ No newline at end of file + commit_message: result adding back to repo [skip ci] another test From 2efa8e98a3c3a03d9eaf64b0c0f0deea942fa67d Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Thu, 27 Oct 2022 22:39:50 +0100 Subject: [PATCH 19/42] jdk8 test --- build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 202abc0..8d38cd4 100644 --- a/build.gradle +++ b/build.gradle @@ -9,8 +9,8 @@ group = 'com.github.fabienrenaud' version = '7' mainClassName = 'com.github.fabienrenaud.jjb.Cli' -sourceCompatibility = JavaVersion.VERSION_17 -targetCompatibility = JavaVersion.VERSION_17 +//sourceCompatibility = JavaVersion.VERSION_17 +//targetCompatibility = JavaVersion.VERSION_17 repositories { mavenCentral() From 6756438945c31bc767f2de3caf416392401ff3e6 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Thu, 27 Oct 2022 22:43:49 +0000 Subject: [PATCH 20/42] result adding back to repo [skip ci] another test --- output/clients-deser-1-1.txt | 645 ++------- output/clients-deser-1-10.txt | 645 ++------- output/clients-deser-1-100.txt | 1723 ++---------------------- output/clients-ser-1-1.txt | 584 ++------ output/clients-ser-1-10.txt | 586 ++------ output/clients-ser-1-100.txt | 1034 ++------------ output/users-deser-1-1.txt | 1240 ++++------------- output/users-deser-1-10.txt | 2290 ++++---------------------------- output/users-deser-1-100.txt | 1240 ++++------------- output/users-ser-1-1.txt | 1212 ++++------------- output/users-ser-1-10.txt | 1872 ++++---------------------- output/users-ser-1-100.txt | 1851 ++++---------------------- 12 files changed, 2324 insertions(+), 12598 deletions(-) diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt index 61f3bfa..a93e423 100644 --- a/output/clients-deser-1-1.txt +++ b/output/clients-deser-1-1.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2767535224634 as seed for Random -253349.183 ops/s -Iteration 1: 406116.884 ops/s +# Warmup Iteration 1: Using SEED=3060156416383 as seed for Random +84305.365 ops/s +Iteration 1: 200729.921 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 406116.884 ops/s + 200729.921 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2780448385667 as seed for Random -113763.721 ops/s -Iteration 1: 217373.656 ops/s +# Warmup Iteration 1: Using SEED=3073263787451 as seed for Random +46227.590 ops/s +Iteration 1: 66119.010 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 217373.656 ops/s + 66119.010 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2793433008601 as seed for Random -405623.616 ops/s -Iteration 1: 614456.313 ops/s +# Warmup Iteration 1: Using SEED=3086389498682 as seed for Random +263550.362 ops/s +Iteration 1: 541599.203 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 614456.313 ops/s + 541599.203 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2806373610588 as seed for Random -246775.171 ops/s -Iteration 1: 325168.137 ops/s +# Warmup Iteration 1: Using SEED=3099520754461 as seed for Random +228857.419 ops/s +Iteration 1: 290161.558 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 325168.137 ops/s + 290161.558 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2819237391905 as seed for Random -20732.534 ops/s -Iteration 1: 71985.707 ops/s +# Warmup Iteration 1: Using SEED=3112562672763 as seed for Random +49903.166 ops/s +Iteration 1: 124190.404 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 71985.707 ops/s + 124190.404 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2832105703868 as seed for Random -15152.350 ops/s -Iteration 1: 34063.045 ops/s +# Warmup Iteration 1: Using SEED=3125591655916 as seed for Random +18596.346 ops/s +Iteration 1: 30107.776 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 34063.045 ops/s + 30107.776 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2844989139766 as seed for Random -119667.424 ops/s -Iteration 1: 209308.805 ops/s +# Warmup Iteration 1: Using SEED=3138730087769 as seed for Random +10939.714 ops/s +Iteration 1: 71105.251 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 209308.805 ops/s + 71105.251 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2857853662572 as seed for Random -63436.907 ops/s -Iteration 1: 123923.687 ops/s +# Warmup Iteration 1: Using SEED=3151886666598 as seed for Random +53017.790 ops/s +Iteration 1: 145817.227 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 123923.687 ops/s + 145817.227 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2870698354946 as seed for Random -170048.120 ops/s -Iteration 1: 297488.475 ops/s +# Warmup Iteration 1: Using SEED=3164899191623 as seed for Random +32701.155 ops/s +Iteration 1: 78483.653 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 297488.475 ops/s + 78483.653 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2883561092866 as seed for Random -216400.767 ops/s -Iteration 1: 324661.961 ops/s +# Warmup Iteration 1: Using SEED=3178028138684 as seed for Random +152973.531 ops/s +Iteration 1: 280965.564 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 324661.961 ops/s + 280965.564 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2896430878426 as seed for Random -232611.935 ops/s -Iteration 1: 342319.021 ops/s +# Warmup Iteration 1: Using SEED=3191084368157 as seed for Random +166379.101 ops/s +Iteration 1: 279279.650 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 342319.021 ops/s + 279279.650 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2909312001452 as seed for Random -63325.101 ops/s -Iteration 1: 128325.795 ops/s +# Warmup Iteration 1: Using SEED=3204188653302 as seed for Random +24851.186 ops/s +Iteration 1: 48846.292 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 128325.795 ops/s + 48846.292 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,424 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2922139166558 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@29584b66 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=3217230478878 as seed for Random +242860.699 ops/s +Iteration 1: 309673.688 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": + 309673.688 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -713,20 +309,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:24 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2923865207789 as seed for Random -45973.636 ops/s -Iteration 1: 91784.861 ops/s +# Warmup Iteration 1: Using SEED=3230300922791 as seed for Random +54592.565 ops/s +Iteration 1: 110920.030 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 91784.861 ops/s + 110920.030 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -736,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2936687853059 as seed for Random -83704.955 ops/s -Iteration 1: 159232.897 ops/s +# Warmup Iteration 1: Using SEED=3243391618562 as seed for Random +83253.478 ops/s +Iteration 1: 159609.081 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 159232.897 ops/s + 159609.081 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:16 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -756,17 +352,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 406116.884 ops/s -Deserialization.avajejsonb_jackson thrpt 217373.656 ops/s -Deserialization.dsljson thrpt 614456.313 ops/s -Deserialization.dsljson_reflection thrpt 325168.137 ops/s -Deserialization.fastjson thrpt 71985.707 ops/s -Deserialization.flexjson thrpt 34063.045 ops/s -Deserialization.genson thrpt 209308.805 ops/s -Deserialization.gson thrpt 123923.687 ops/s -Deserialization.jackson thrpt 297488.475 ops/s -Deserialization.jackson_afterburner thrpt 324661.961 ops/s -Deserialization.jackson_blackbird thrpt 342319.021 ops/s -Deserialization.jodd thrpt 128325.795 ops/s -Deserialization.logansquare thrpt 91784.861 ops/s -Deserialization.moshi thrpt 159232.897 ops/s +Deserialization.avajejsonb thrpt 200729.921 ops/s +Deserialization.avajejsonb_jackson thrpt 66119.010 ops/s +Deserialization.dsljson thrpt 541599.203 ops/s +Deserialization.dsljson_reflection thrpt 290161.558 ops/s +Deserialization.fastjson thrpt 124190.404 ops/s +Deserialization.flexjson thrpt 30107.776 ops/s +Deserialization.genson thrpt 71105.251 ops/s +Deserialization.gson thrpt 145817.227 ops/s +Deserialization.jackson thrpt 78483.653 ops/s +Deserialization.jackson_afterburner thrpt 280965.564 ops/s +Deserialization.jackson_blackbird thrpt 279279.650 ops/s +Deserialization.jodd thrpt 48846.292 ops/s +Deserialization.jsoniter thrpt 309673.688 ops/s +Deserialization.logansquare thrpt 110920.030 ops/s +Deserialization.moshi thrpt 159609.081 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt index 8a93766..818f431 100644 --- a/output/clients-deser-1-10.txt +++ b/output/clients-deser-1-10.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3132884858889 as seed for Random -7295.599 ops/s -Iteration 1: 15753.575 ops/s +# Warmup Iteration 1: Using SEED=3454159176573 as seed for Random +6534.910 ops/s +Iteration 1: 11257.515 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 15753.575 ops/s + 11257.515 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3145738486409 as seed for Random -4692.281 ops/s -Iteration 1: 9336.740 ops/s +# Warmup Iteration 1: Using SEED=3467200006249 as seed for Random +3557.083 ops/s +Iteration 1: 8531.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 9336.740 ops/s + 8531.166 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3158673350272 as seed for Random -42526.104 ops/s -Iteration 1: 69967.641 ops/s +# Warmup Iteration 1: Using SEED=3480371789256 as seed for Random +36418.447 ops/s +Iteration 1: 57436.317 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 69967.641 ops/s + 57436.317 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:34 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3171562817870 as seed for Random -38103.740 ops/s -Iteration 1: 54420.795 ops/s +# Warmup Iteration 1: Using SEED=3493473317260 as seed for Random +38608.762 ops/s +Iteration 1: 48132.711 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 54420.795 ops/s + 48132.711 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3184455503165 as seed for Random -3208.177 ops/s -Iteration 1: 7248.444 ops/s +# Warmup Iteration 1: Using SEED=3506505087350 as seed for Random +3453.066 ops/s +Iteration 1: 9343.319 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 7248.444 ops/s + 9343.319 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3197345701020 as seed for Random -1388.749 ops/s -Iteration 1: 2216.154 ops/s +# Warmup Iteration 1: Using SEED=3519579684417 as seed for Random +1331.257 ops/s +Iteration 1: 2866.829 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 2216.154 ops/s + 2866.829 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3210294432792 as seed for Random -4789.333 ops/s -Iteration 1: 10976.255 ops/s +# Warmup Iteration 1: Using SEED=3532738472089 as seed for Random +5099.728 ops/s +Iteration 1: 8639.892 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 10976.255 ops/s + 8639.892 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3223162281675 as seed for Random -4079.466 ops/s -Iteration 1: 9568.063 ops/s +# Warmup Iteration 1: Using SEED=3545893567779 as seed for Random +4744.938 ops/s +Iteration 1: 10752.366 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 9568.063 ops/s + 10752.366 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3236024087836 as seed for Random -3684.635 ops/s -Iteration 1: 5430.615 ops/s +# Warmup Iteration 1: Using SEED=3558970169361 as seed for Random +3260.637 ops/s +Iteration 1: 4999.789 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 5430.615 ops/s + 4999.789 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3248899009541 as seed for Random -4710.848 ops/s -Iteration 1: 7289.010 ops/s +# Warmup Iteration 1: Using SEED=3572033757453 as seed for Random +4845.240 ops/s +Iteration 1: 10286.146 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 7289.010 ops/s + 10286.146 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3261762458737 as seed for Random -4064.074 ops/s -Iteration 1: 7619.386 ops/s +# Warmup Iteration 1: Using SEED=3585142341034 as seed for Random +3427.658 ops/s +Iteration 1: 7169.767 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 7619.386 ops/s + 7169.767 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3274637267184 as seed for Random -4234.921 ops/s -Iteration 1: 10246.380 ops/s +# Warmup Iteration 1: Using SEED=3598256681810 as seed for Random +3883.012 ops/s +Iteration 1: 7651.469 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 10246.380 ops/s + 7651.469 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,424 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3287502846342 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6494cd2 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=3611355421381 as seed for Random +2658.441 ops/s +Iteration 1: 5242.765 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": + 5242.765 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -713,20 +309,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:24 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3289250553034 as seed for Random -4966.421 ops/s -Iteration 1: 9895.885 ops/s +# Warmup Iteration 1: Using SEED=3624418886185 as seed for Random +4602.440 ops/s +Iteration 1: 8581.001 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 9895.885 ops/s + 8581.001 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -736,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3302116638682 as seed for Random -5950.318 ops/s -Iteration 1: 12027.477 ops/s +# Warmup Iteration 1: Using SEED=3637448271619 as seed for Random +4315.664 ops/s +Iteration 1: 8035.848 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 12027.477 ops/s + 8035.848 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:16 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -756,17 +352,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 15753.575 ops/s -Deserialization.avajejsonb_jackson thrpt 9336.740 ops/s -Deserialization.dsljson thrpt 69967.641 ops/s -Deserialization.dsljson_reflection thrpt 54420.795 ops/s -Deserialization.fastjson thrpt 7248.444 ops/s -Deserialization.flexjson thrpt 2216.154 ops/s -Deserialization.genson thrpt 10976.255 ops/s -Deserialization.gson thrpt 9568.063 ops/s -Deserialization.jackson thrpt 5430.615 ops/s -Deserialization.jackson_afterburner thrpt 7289.010 ops/s -Deserialization.jackson_blackbird thrpt 7619.386 ops/s -Deserialization.jodd thrpt 10246.380 ops/s -Deserialization.logansquare thrpt 9895.885 ops/s -Deserialization.moshi thrpt 12027.477 ops/s +Deserialization.avajejsonb thrpt 11257.515 ops/s +Deserialization.avajejsonb_jackson thrpt 8531.166 ops/s +Deserialization.dsljson thrpt 57436.317 ops/s +Deserialization.dsljson_reflection thrpt 48132.711 ops/s +Deserialization.fastjson thrpt 9343.319 ops/s +Deserialization.flexjson thrpt 2866.829 ops/s +Deserialization.genson thrpt 8639.892 ops/s +Deserialization.gson thrpt 10752.366 ops/s +Deserialization.jackson thrpt 4999.789 ops/s +Deserialization.jackson_afterburner thrpt 10286.146 ops/s +Deserialization.jackson_blackbird thrpt 7169.767 ops/s +Deserialization.jodd thrpt 7651.469 ops/s +Deserialization.jsoniter thrpt 5242.765 ops/s +Deserialization.logansquare thrpt 8581.001 ops/s +Deserialization.moshi thrpt 8035.848 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt index cdca852..f6c6e58 100644 --- a/output/clients-deser-1-100.txt +++ b/output/clients-deser-1-100.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3498864559387 as seed for Random -693.086 ops/s -Iteration 1: 1328.956 ops/s +# Warmup Iteration 1: Using SEED=3849110092045 as seed for Random +659.172 ops/s +Iteration 1: 1318.206 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 1328.956 ops/s + 1318.206 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:03 +# Run progress: 6.67% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3511935847892 as seed for Random -479.693 ops/s -Iteration 1: 1098.517 ops/s +# Warmup Iteration 1: Using SEED=3862314979969 as seed for Random +378.151 ops/s +Iteration 1: 721.890 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 1098.517 ops/s + 721.890 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:49 +# Run progress: 13.33% complete, ETA 00:02:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3524908299332 as seed for Random -4471.127 ops/s -Iteration 1: 6948.318 ops/s +# Warmup Iteration 1: Using SEED=3875534771015 as seed for Random +3146.964 ops/s +Iteration 1: 5468.517 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 6948.318 ops/s + 5468.517 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:36 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3537899550259 as seed for Random -4282.248 ops/s -Iteration 1: 5629.881 ops/s +# Warmup Iteration 1: Using SEED=3888663664329 as seed for Random +3805.202 ops/s +Iteration 1: 4740.457 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 5629.881 ops/s + 4740.457 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3550812448824 as seed for Random -459.723 ops/s -Iteration 1: 704.168 ops/s +# Warmup Iteration 1: Using SEED=3901763901482 as seed for Random +344.157 ops/s +Iteration 1: 715.855 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 704.168 ops/s + 715.855 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3563759574158 as seed for Random -155.710 ops/s -Iteration 1: 241.988 ops/s +# Warmup Iteration 1: Using SEED=3914882054343 as seed for Random +93.683 ops/s +Iteration 1: 108.275 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 241.988 ops/s + 108.275 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3576800841891 as seed for Random -451.284 ops/s -Iteration 1: 1048.112 ops/s +# Warmup Iteration 1: Using SEED=3928391632019 as seed for Random +428.029 ops/s +Iteration 1: 870.312 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 1048.112 ops/s + 870.312 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3589739633195 as seed for Random -537.793 ops/s -Iteration 1: 1107.434 ops/s +# Warmup Iteration 1: Using SEED=3941636262071 as seed for Random +143.782 ops/s +Iteration 1: 157.056 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 1107.434 ops/s + 157.056 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3602676515191 as seed for Random -439.638 ops/s -Iteration 1: 800.540 ops/s +# Warmup Iteration 1: Using SEED=3954866968793 as seed for Random +349.064 ops/s +Iteration 1: 479.655 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 800.540 ops/s + 479.655 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3615659136923 as seed for Random -498.528 ops/s -Iteration 1: 652.719 ops/s +# Warmup Iteration 1: Using SEED=3968044892465 as seed for Random +385.139 ops/s +Iteration 1: 934.178 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 652.719 ops/s + 934.178 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3628579156021 as seed for Random -450.227 ops/s -Iteration 1: 904.957 ops/s +# Warmup Iteration 1: Using SEED=3981171804197 as seed for Random +359.319 ops/s +Iteration 1: 881.238 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 904.957 ops/s + 881.238 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3641503736009 as seed for Random -442.605 ops/s -Iteration 1: 1004.469 ops/s +# Warmup Iteration 1: Using SEED=3994369269268 as seed for Random +374.887 ops/s +Iteration 1: 695.536 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 1004.469 ops/s + 695.536 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,1502 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3654409715181 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1be3889a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 51 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5b8df301 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@636ea782 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6ea00195 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6494cd2 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3e86008d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1fb7d520 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@16a90bbd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e607570 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6837cc2d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@66282abf with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@159de53c with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@2b0ffcf6 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@39c96df with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 50 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=4007542397720 as seed for Random +1013.989 ops/s +Iteration 1: 1427.112 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": + 1427.112 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1791,20 +309,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:24 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3656211289857 as seed for Random -406.008 ops/s -Iteration 1: 775.454 ops/s +# Warmup Iteration 1: Using SEED=4020657039147 as seed for Random +475.845 ops/s +Iteration 1: 816.499 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 775.454 ops/s + 816.499 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1814,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3669234975325 as seed for Random -430.528 ops/s -Iteration 1: 821.804 ops/s +# Warmup Iteration 1: Using SEED=4033745066403 as seed for Random +403.136 ops/s +Iteration 1: 467.187 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 821.804 ops/s + 467.187 ops/s -# Run complete. Total time: 00:03:03 +# Run complete. Total time: 00:03:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1834,17 +352,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 1328.956 ops/s -Deserialization.avajejsonb_jackson thrpt 1098.517 ops/s -Deserialization.dsljson thrpt 6948.318 ops/s -Deserialization.dsljson_reflection thrpt 5629.881 ops/s -Deserialization.fastjson thrpt 704.168 ops/s -Deserialization.flexjson thrpt 241.988 ops/s -Deserialization.genson thrpt 1048.112 ops/s -Deserialization.gson thrpt 1107.434 ops/s -Deserialization.jackson thrpt 800.540 ops/s -Deserialization.jackson_afterburner thrpt 652.719 ops/s -Deserialization.jackson_blackbird thrpt 904.957 ops/s -Deserialization.jodd thrpt 1004.469 ops/s -Deserialization.logansquare thrpt 775.454 ops/s -Deserialization.moshi thrpt 821.804 ops/s +Deserialization.avajejsonb thrpt 1318.206 ops/s +Deserialization.avajejsonb_jackson thrpt 721.890 ops/s +Deserialization.dsljson thrpt 5468.517 ops/s +Deserialization.dsljson_reflection thrpt 4740.457 ops/s +Deserialization.fastjson thrpt 715.855 ops/s +Deserialization.flexjson thrpt 108.275 ops/s +Deserialization.genson thrpt 870.312 ops/s +Deserialization.gson thrpt 157.056 ops/s +Deserialization.jackson thrpt 479.655 ops/s +Deserialization.jackson_afterburner thrpt 934.178 ops/s +Deserialization.jackson_blackbird thrpt 881.238 ops/s +Deserialization.jodd thrpt 695.536 ops/s +Deserialization.jsoniter thrpt 1427.112 ops/s +Deserialization.logansquare thrpt 816.499 ops/s +Deserialization.moshi thrpt 467.187 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt index d238fac..572815e 100644 --- a/output/clients-ser-1-1.txt +++ b/output/clients-ser-1-1.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2584851363981 as seed for Random -418896.981 ops/s -Iteration 1: 514711.113 ops/s +# Warmup Iteration 1: Using SEED=2863884277116 as seed for Random +323067.774 ops/s +Iteration 1: 393917.052 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 514711.113 ops/s + 393917.052 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:00 +# Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2597702395633 as seed for Random -386258.738 ops/s -Iteration 1: 507759.812 ops/s +# Warmup Iteration 1: Using SEED=2876980359704 as seed for Random +258397.216 ops/s +Iteration 1: 341520.380 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 507759.812 ops/s + 341520.380 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2610656178297 as seed for Random -831421.007 ops/s -Iteration 1: 948346.166 ops/s +# Warmup Iteration 1: Using SEED=2890131498624 as seed for Random +640359.376 ops/s +Iteration 1: 756690.367 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 948346.166 ops/s + 756690.367 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2623578637275 as seed for Random -733175.682 ops/s -Iteration 1: 830159.487 ops/s +# Warmup Iteration 1: Using SEED=2903185942611 as seed for Random +498908.479 ops/s +Iteration 1: 543698.072 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 830159.487 ops/s + 543698.072 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2636455975748 as seed for Random -94659.238 ops/s -Iteration 1: 369118.137 ops/s +# Warmup Iteration 1: Using SEED=2916241213251 as seed for Random +86223.429 ops/s +Iteration 1: 287449.293 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 369118.137 ops/s + 287449.293 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2649303882532 as seed for Random -3032.887 ops/s -Iteration 1: 1733.693 ops/s +# Warmup Iteration 1: Using SEED=2929283052349 as seed for Random +2334.744 ops/s +Iteration 1: 1423.766 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1733.693 ops/s + 1423.766 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2662155575284 as seed for Random -268153.173 ops/s -Iteration 1: 344097.585 ops/s +# Warmup Iteration 1: Using SEED=2942307020562 as seed for Random +134377.843 ops/s +Iteration 1: 202102.945 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 344097.585 ops/s + 202102.945 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2675054339241 as seed for Random -112495.321 ops/s -Iteration 1: 177582.079 ops/s +# Warmup Iteration 1: Using SEED=2955371594647 as seed for Random +101163.352 ops/s +Iteration 1: 167095.036 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 177582.079 ops/s + 167095.036 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2687981173706 as seed for Random -472061.222 ops/s -Iteration 1: 587148.132 ops/s +# Warmup Iteration 1: Using SEED=2968382222180 as seed for Random +344012.907 ops/s +Iteration 1: 438884.470 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 587148.132 ops/s + 438884.470 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2700897504715 as seed for Random -424161.023 ops/s -Iteration 1: 534805.806 ops/s +# Warmup Iteration 1: Using SEED=2981378251309 as seed for Random +303179.205 ops/s +Iteration 1: 431570.984 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 534805.806 ops/s + 431570.984 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2713804425221 as seed for Random -255571.100 ops/s -Iteration 1: 413561.737 ops/s +# Warmup Iteration 1: Using SEED=2994378184152 as seed for Random +210338.122 ops/s +Iteration 1: 321400.334 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 413561.737 ops/s + 321400.334 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2726686224905 as seed for Random -33230.522 ops/s -Iteration 1: 57844.596 ops/s +# Warmup Iteration 1: Using SEED=3007399106172 as seed for Random +56570.079 ops/s +Iteration 1: 102879.530 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 57844.596 ops/s + 102879.530 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,363 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2739513059990 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=3020426039908 as seed for Random +271219.237 ops/s +Iteration 1: 369493.131 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": + 369493.131 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -652,20 +309,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:24 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2741231827692 as seed for Random -311424.184 ops/s -Iteration 1: 456802.820 ops/s +# Warmup Iteration 1: Using SEED=3033469486580 as seed for Random +203023.770 ops/s +Iteration 1: 384051.731 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 456802.820 ops/s + 384051.731 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -675,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2754122568259 as seed for Random -208418.199 ops/s -Iteration 1: 288994.665 ops/s +# Warmup Iteration 1: Using SEED=3046500713463 as seed for Random +137989.940 ops/s +Iteration 1: 194848.783 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 288994.665 ops/s + 194848.783 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:15 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -695,17 +352,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 514711.113 ops/s -Serialization.avajejsonb_jackson thrpt 507759.812 ops/s -Serialization.dsljson thrpt 948346.166 ops/s -Serialization.dsljson_reflection thrpt 830159.487 ops/s -Serialization.fastjson thrpt 369118.137 ops/s -Serialization.flexjson thrpt 1733.693 ops/s -Serialization.genson thrpt 344097.585 ops/s -Serialization.gson thrpt 177582.079 ops/s -Serialization.jackson thrpt 587148.132 ops/s -Serialization.jackson_afterburner thrpt 534805.806 ops/s -Serialization.jackson_blackbird thrpt 413561.737 ops/s -Serialization.jodd thrpt 57844.596 ops/s -Serialization.logansquare thrpt 456802.820 ops/s -Serialization.moshi thrpt 288994.665 ops/s +Serialization.avajejsonb thrpt 393917.052 ops/s +Serialization.avajejsonb_jackson thrpt 341520.380 ops/s +Serialization.dsljson thrpt 756690.367 ops/s +Serialization.dsljson_reflection thrpt 543698.072 ops/s +Serialization.fastjson thrpt 287449.293 ops/s +Serialization.flexjson thrpt 1423.766 ops/s +Serialization.genson thrpt 202102.945 ops/s +Serialization.gson thrpt 167095.036 ops/s +Serialization.jackson thrpt 438884.470 ops/s +Serialization.jackson_afterburner thrpt 431570.984 ops/s +Serialization.jackson_blackbird thrpt 321400.334 ops/s +Serialization.jodd thrpt 102879.530 ops/s +Serialization.jsoniter thrpt 369493.131 ops/s +Serialization.logansquare thrpt 384051.731 ops/s +Serialization.moshi thrpt 194848.783 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt index e092ff2..cd37fe2 100644 --- a/output/clients-ser-1-10.txt +++ b/output/clients-ser-1-10.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2950110540789 as seed for Random -35152.275 ops/s -Iteration 1: 43104.063 ops/s +# Warmup Iteration 1: Using SEED=3257100109806 as seed for Random +27001.312 ops/s +Iteration 1: 34154.808 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 43104.063 ops/s + 34154.808 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:00 +# Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2962966081084 as seed for Random -29413.551 ops/s -Iteration 1: 39200.326 ops/s +# Warmup Iteration 1: Using SEED=3270223214795 as seed for Random +23018.702 ops/s +Iteration 1: 28992.942 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 39200.326 ops/s + 28992.942 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:47 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2975882219341 as seed for Random -91651.741 ops/s -Iteration 1: 122175.490 ops/s +# Warmup Iteration 1: Using SEED=3283363257509 as seed for Random +74971.327 ops/s +Iteration 1: 86148.575 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 122175.490 ops/s + 86148.575 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2988825383211 as seed for Random -78288.615 ops/s -Iteration 1: 86844.465 ops/s +# Warmup Iteration 1: Using SEED=3296418849734 as seed for Random +60195.685 ops/s +Iteration 1: 67855.071 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 86844.465 ops/s + 67855.071 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:21 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3001692449110 as seed for Random -10691.427 ops/s -Iteration 1: 32024.270 ops/s +# Warmup Iteration 1: Using SEED=3309505116166 as seed for Random +3015.104 ops/s +Iteration 1: 15748.199 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 32024.270 ops/s + 15748.199 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3014569956277 as seed for Random -649.177 ops/s -Iteration 1: 446.619 ops/s +# Warmup Iteration 1: Using SEED=3322589612835 as seed for Random +517.619 ops/s +Iteration 1: 379.167 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 446.619 ops/s + 379.167 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3027510697563 as seed for Random -23814.513 ops/s -Iteration 1: 35733.411 ops/s +# Warmup Iteration 1: Using SEED=3335798462824 as seed for Random +15755.956 ops/s +Iteration 1: 21545.911 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 35733.411 ops/s + 21545.911 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3040358880052 as seed for Random -11446.100 ops/s -Iteration 1: 18679.615 ops/s +# Warmup Iteration 1: Using SEED=3348858348258 as seed for Random +6364.396 ops/s +Iteration 1: 15018.243 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 18679.615 ops/s + 15018.243 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3053293689736 as seed for Random -24767.938 ops/s -Iteration 1: 32781.707 ops/s +# Warmup Iteration 1: Using SEED=3361926036777 as seed for Random +18651.956 ops/s +Iteration 1: 26549.131 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 32781.707 ops/s + 26549.131 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3066209929863 as seed for Random -25899.411 ops/s -Iteration 1: 36464.404 ops/s +# Warmup Iteration 1: Using SEED=3375012116674 as seed for Random +19925.784 ops/s +Iteration 1: 28492.775 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 36464.404 ops/s + 28492.775 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3079071513196 as seed for Random -23443.282 ops/s -Iteration 1: 31967.791 ops/s +# Warmup Iteration 1: Using SEED=3388078209650 as seed for Random +17389.047 ops/s +Iteration 1: 26563.728 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 31967.791 ops/s + 26563.728 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3091926856700 as seed for Random -4548.230 ops/s -Iteration 1: 5968.776 ops/s +# Warmup Iteration 1: Using SEED=3401178894525 as seed for Random +3311.378 ops/s +Iteration 1: 9269.895 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 5968.776 ops/s + 9269.895 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,363 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3104787602943 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=3414248805129 as seed for Random +31411.435 ops/s +Iteration 1: 38761.019 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": + 38761.019 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -652,20 +309,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:24 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3106505378657 as seed for Random -7007.443 ops/s -Iteration 1: 7756.490 ops/s +# Warmup Iteration 1: Using SEED=3427294798377 as seed for Random +21026.492 ops/s +Iteration 1: 31186.134 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 7756.490 ops/s + 31186.134 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -675,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3119423746978 as seed for Random -14922.454 ops/s -Iteration 1: 26453.336 ops/s +# Warmup Iteration 1: Using SEED=3440353152986 as seed for Random +6226.075 ops/s +Iteration 1: 15958.809 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 26453.336 ops/s + 15958.809 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:16 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -694,18 +351,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 43104.063 ops/s -Serialization.avajejsonb_jackson thrpt 39200.326 ops/s -Serialization.dsljson thrpt 122175.490 ops/s -Serialization.dsljson_reflection thrpt 86844.465 ops/s -Serialization.fastjson thrpt 32024.270 ops/s -Serialization.flexjson thrpt 446.619 ops/s -Serialization.genson thrpt 35733.411 ops/s -Serialization.gson thrpt 18679.615 ops/s -Serialization.jackson thrpt 32781.707 ops/s -Serialization.jackson_afterburner thrpt 36464.404 ops/s -Serialization.jackson_blackbird thrpt 31967.791 ops/s -Serialization.jodd thrpt 5968.776 ops/s -Serialization.logansquare thrpt 7756.490 ops/s -Serialization.moshi thrpt 26453.336 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 34154.808 ops/s +Serialization.avajejsonb_jackson thrpt 28992.942 ops/s +Serialization.dsljson thrpt 86148.575 ops/s +Serialization.dsljson_reflection thrpt 67855.071 ops/s +Serialization.fastjson thrpt 15748.199 ops/s +Serialization.flexjson thrpt 379.167 ops/s +Serialization.genson thrpt 21545.911 ops/s +Serialization.gson thrpt 15018.243 ops/s +Serialization.jackson thrpt 26549.131 ops/s +Serialization.jackson_afterburner thrpt 28492.775 ops/s +Serialization.jackson_blackbird thrpt 26563.728 ops/s +Serialization.jodd thrpt 9269.895 ops/s +Serialization.jsoniter thrpt 38761.019 ops/s +Serialization.logansquare thrpt 31186.134 ops/s +Serialization.moshi thrpt 15958.809 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt index 21246db..b460f44 100644 --- a/output/clients-ser-1-100.txt +++ b/output/clients-ser-1-100.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3315537319178 as seed for Random -3736.115 ops/s -Iteration 1: 4583.360 ops/s +# Warmup Iteration 1: Using SEED=3651183281703 as seed for Random +2469.221 ops/s +Iteration 1: 3298.396 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 4583.360 ops/s + 3298.396 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3328478947933 as seed for Random -2970.335 ops/s -Iteration 1: 4075.310 ops/s +# Warmup Iteration 1: Using SEED=3664267053918 as seed for Random +2275.403 ops/s +Iteration 1: 2924.326 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 4075.310 ops/s + 2924.326 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3341457745567 as seed for Random -8331.083 ops/s -Iteration 1: 11371.818 ops/s +# Warmup Iteration 1: Using SEED=3677372763705 as seed for Random +7498.240 ops/s +Iteration 1: 8650.625 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 11371.818 ops/s + 8650.625 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3354376858355 as seed for Random -8305.532 ops/s -Iteration 1: 8981.855 ops/s +# Warmup Iteration 1: Using SEED=3690487898293 as seed for Random +6251.575 ops/s +Iteration 1: 6825.546 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 8981.855 ops/s + 6825.546 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3367250676338 as seed for Random -496.113 ops/s -Iteration 1: 1942.082 ops/s +# Warmup Iteration 1: Using SEED=3703598015228 as seed for Random +1153.159 ops/s +Iteration 1: 1761.807 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 1942.082 ops/s + 1761.807 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3380179777217 as seed for Random -173.986 ops/s -Iteration 1: 142.943 ops/s +# Warmup Iteration 1: Using SEED=3716720807345 as seed for Random +121.957 ops/s +Iteration 1: 112.013 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 142.943 ops/s + 112.013 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3393324391104 as seed for Random -2530.404 ops/s -Iteration 1: 3485.946 ops/s +# Warmup Iteration 1: Using SEED=3730222362765 as seed for Random +1397.748 ops/s +Iteration 1: 2343.197 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 3485.946 ops/s + 2343.197 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3406244025529 as seed for Random -1077.098 ops/s -Iteration 1: 1776.459 ops/s +# Warmup Iteration 1: Using SEED=3743358964027 as seed for Random +973.083 ops/s +Iteration 1: 1622.415 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1776.459 ops/s + 1622.415 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3419159261038 as seed for Random -2268.248 ops/s -Iteration 1: 3267.391 ops/s +# Warmup Iteration 1: Using SEED=3756570570638 as seed for Random +1720.665 ops/s +Iteration 1: 2331.915 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 3267.391 ops/s + 2331.915 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3432095367912 as seed for Random -2267.552 ops/s -Iteration 1: 3140.207 ops/s +# Warmup Iteration 1: Using SEED=3769717136812 as seed for Random +1629.801 ops/s +Iteration 1: 2373.919 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 3140.207 ops/s + 2373.919 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3444951420304 as seed for Random -2231.875 ops/s -Iteration 1: 3272.444 ops/s +# Warmup Iteration 1: Using SEED=3782784979934 as seed for Random +1630.934 ops/s +Iteration 1: 2193.481 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 3272.444 ops/s + 2193.481 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3457853762687 as seed for Random -380.859 ops/s -Iteration 1: 592.261 ops/s +# Warmup Iteration 1: Using SEED=3795989127745 as seed for Random +503.592 ops/s +Iteration 1: 1111.991 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 592.261 ops/s + 1111.991 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,811 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3470755731791 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: class com.github.fabienrenaud.jjb.model.Clients$EyeColor with [], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -if (obj == null) { stream.writeNull(); return; } -stream.writeRaw(obj.toString()); -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.com.github.fabienrenaud.jjb.model.Clients_EyeColor: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=3809127434885 as seed for Random +3566.379 ops/s +Iteration 1: 3625.373 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": + 3625.373 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1100,20 +309,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:24 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3472544712828 as seed for Random -1797.186 ops/s -Iteration 1: 4169.910 ops/s +# Warmup Iteration 1: Using SEED=3822226622022 as seed for Random +2018.776 ops/s +Iteration 1: 2957.244 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 4169.910 ops/s + 2957.244 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1123,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3485448996496 as seed for Random -1790.064 ops/s -Iteration 1: 2394.454 ops/s +# Warmup Iteration 1: Using SEED=3835338142372 as seed for Random +1320.742 ops/s +Iteration 1: 1715.304 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2394.454 ops/s + 1715.304 ops/s -# Run complete. Total time: 00:03:02 +# Run complete. Total time: 00:03:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1142,18 +351,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 4583.360 ops/s -Serialization.avajejsonb_jackson thrpt 4075.310 ops/s -Serialization.dsljson thrpt 11371.818 ops/s -Serialization.dsljson_reflection thrpt 8981.855 ops/s -Serialization.fastjson thrpt 1942.082 ops/s -Serialization.flexjson thrpt 142.943 ops/s -Serialization.genson thrpt 3485.946 ops/s -Serialization.gson thrpt 1776.459 ops/s -Serialization.jackson thrpt 3267.391 ops/s -Serialization.jackson_afterburner thrpt 3140.207 ops/s -Serialization.jackson_blackbird thrpt 3272.444 ops/s -Serialization.jodd thrpt 592.261 ops/s -Serialization.logansquare thrpt 4169.910 ops/s -Serialization.moshi thrpt 2394.454 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 3298.396 ops/s +Serialization.avajejsonb_jackson thrpt 2924.326 ops/s +Serialization.dsljson thrpt 8650.625 ops/s +Serialization.dsljson_reflection thrpt 6825.546 ops/s +Serialization.fastjson thrpt 1761.807 ops/s +Serialization.flexjson thrpt 112.013 ops/s +Serialization.genson thrpt 2343.197 ops/s +Serialization.gson thrpt 1622.415 ops/s +Serialization.jackson thrpt 2331.915 ops/s +Serialization.jackson_afterburner thrpt 2373.919 ops/s +Serialization.jackson_blackbird thrpt 2193.481 ops/s +Serialization.jodd thrpt 1111.991 ops/s +Serialization.jsoniter thrpt 3625.373 ops/s +Serialization.logansquare thrpt 2957.244 ops/s +Serialization.moshi thrpt 1715.304 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt index 1de5648..7c616fb 100644 --- a/output/users-deser-1-1.txt +++ b/output/users-deser-1-1.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=577689357634 as seed for Random -530794.474 ops/s -Iteration 1: 645501.494 ops/s +# Warmup Iteration 1: Using SEED=709293958983 as seed for Random +373373.763 ops/s +Iteration 1: 503480.007 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 645501.494 ops/s + 503480.007 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:53 +# Run progress: 3.03% complete, ETA 00:06:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=590537302857 as seed for Random -312063.783 ops/s -Iteration 1: 429903.510 ops/s +# Warmup Iteration 1: Using SEED=722292890740 as seed for Random +239222.444 ops/s +Iteration 1: 389555.879 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 429903.510 ops/s + 389555.879 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,328 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:38 +# Run progress: 6.06% complete, ETA 00:06:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=603344079852 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=735323395881 as seed for Random +118326.332 ops/s +Iteration 1: 152912.969 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": + 152912.969 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -387,20 +79,20 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:24 +# Run progress: 9.09% complete, ETA 00:06:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=604040853123 as seed for Random -570448.254 ops/s -Iteration 1: 673015.363 ops/s +# Warmup Iteration 1: Using SEED=748286294538 as seed for Random +333474.632 ops/s +Iteration 1: 500718.278 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 673015.363 ops/s + 500718.278 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -410,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:45 +# Run progress: 12.12% complete, ETA 00:06:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=616928485231 as seed for Random -553293.803 ops/s -Iteration 1: 640112.174 ops/s +# Warmup Iteration 1: Using SEED=761268263583 as seed for Random +290160.605 ops/s +Iteration 1: 474258.908 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 640112.174 ops/s + 474258.908 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -433,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:52 +# Run progress: 15.15% complete, ETA 00:06:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=629800868294 as seed for Random -140577.838 ops/s -Iteration 1: 248895.943 ops/s +# Warmup Iteration 1: Using SEED=774259747874 as seed for Random +107564.167 ops/s +Iteration 1: 189378.031 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 248895.943 ops/s + 189378.031 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -456,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:52 +# Run progress: 18.18% complete, ETA 00:05:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=642602340193 as seed for Random -11767.619 ops/s -Iteration 1: 33906.722 ops/s +# Warmup Iteration 1: Using SEED=787286544351 as seed for Random +16953.764 ops/s +Iteration 1: 30399.908 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 33906.722 ops/s + 30399.908 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -479,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:49 +# Run progress: 21.21% complete, ETA 00:05:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=655434801725 as seed for Random -220144.958 ops/s -Iteration 1: 290517.430 ops/s +# Warmup Iteration 1: Using SEED=800327541806 as seed for Random +121188.272 ops/s +Iteration 1: 193095.437 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 290517.430 ops/s + 193095.437 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -502,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:43 +# Run progress: 24.24% complete, ETA 00:05:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=668267125172 as seed for Random -187824.927 ops/s -Iteration 1: 281591.652 ops/s +# Warmup Iteration 1: Using SEED=813265476993 as seed for Random +113884.081 ops/s +Iteration 1: 182381.991 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 281591.652 ops/s + 182381.991 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -525,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:35 +# Run progress: 27.27% complete, ETA 00:05:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=681060318089 as seed for Random -293897.544 ops/s -Iteration 1: 402387.759 ops/s +# Warmup Iteration 1: Using SEED=826284258848 as seed for Random +215682.163 ops/s +Iteration 1: 321651.279 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 402387.759 ops/s + 321651.279 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -548,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:27 +# Run progress: 30.30% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=693847978341 as seed for Random -344902.457 ops/s -Iteration 1: 447586.370 ops/s +# Warmup Iteration 1: Using SEED=839297315254 as seed for Random +289644.173 ops/s +Iteration 1: 380743.343 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 447586.370 ops/s + 380743.343 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -571,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:18 +# Run progress: 33.33% complete, ETA 00:04:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=706654051254 as seed for Random -231850.567 ops/s -Iteration 1: 306059.000 ops/s +# Warmup Iteration 1: Using SEED=852254601394 as seed for Random +246212.259 ops/s +Iteration 1: 330178.366 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 306059.000 ops/s + 330178.366 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -594,20 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:08 +# Run progress: 36.36% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=719434050648 as seed for Random -244070.277 ops/s -Iteration 1: 304739.202 ops/s +# Warmup Iteration 1: Using SEED=865250960925 as seed for Random +185793.186 ops/s +Iteration 1: 245459.548 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 304739.202 ops/s + 245459.548 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -617,20 +309,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:57 +# Run progress: 39.39% complete, ETA 00:04:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=732261874762 as seed for Random -46702.097 ops/s -Iteration 1: 61137.809 ops/s +# Warmup Iteration 1: Using SEED=878238818695 as seed for Random +16438.312 ops/s +Iteration 1: 51291.601 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 61137.809 ops/s + 51291.601 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -640,422 +332,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:04:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=745071729967 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53cef3bc with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=891206638888 as seed for Random +211289.860 ops/s +Iteration 1: 405706.511 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": + 405706.511 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1065,20 +355,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:22 +# Run progress: 45.45% complete, ETA 00:03:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=746753073130 as seed for Random -348291.930 ops/s -Iteration 1: 426891.468 ops/s +# Warmup Iteration 1: Using SEED=904197612171 as seed for Random +179116.915 ops/s +Iteration 1: 230983.211 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 426891.468 ops/s + 230983.211 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1088,20 +378,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:13 +# Run progress: 48.48% complete, ETA 00:03:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=759566676707 as seed for Random -169156.082 ops/s -Iteration 1: 238625.555 ops/s +# Warmup Iteration 1: Using SEED=917150567957 as seed for Random +158948.567 ops/s +Iteration 1: 190667.061 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 238625.555 ops/s + 190667.061 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1111,20 +401,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:03 +# Run progress: 51.52% complete, ETA 00:03:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=772425134352 as seed for Random -251573.623 ops/s -Iteration 1: 321222.547 ops/s +# Warmup Iteration 1: Using SEED=930188665131 as seed for Random +89614.689 ops/s +Iteration 1: 126391.523 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 321222.547 ops/s + 126391.523 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1134,20 +424,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:53 +# Run progress: 54.55% complete, ETA 00:03:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=785336780794 as seed for Random -29863.840 ops/s -Iteration 1: 57772.331 ops/s +# Warmup Iteration 1: Using SEED=943150249763 as seed for Random +25209.527 ops/s +Iteration 1: 47219.946 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 57772.331 ops/s + 47219.946 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1157,20 +447,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:42 +# Run progress: 57.58% complete, ETA 00:03:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=798137265732 as seed for Random -240433.200 ops/s -Iteration 1: 334091.021 ops/s +# Warmup Iteration 1: Using SEED=956163827939 as seed for Random +133833.730 ops/s +Iteration 1: 215553.706 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 334091.021 ops/s + 215553.706 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1180,20 +470,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=810994092175 as seed for Random -159735.017 ops/s -Iteration 1: 260677.192 ops/s +# Warmup Iteration 1: Using SEED=969284765374 as seed for Random +104584.893 ops/s +Iteration 1: 192307.437 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 260677.192 ops/s + 192307.437 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1203,20 +493,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=823811473605 as seed for Random -335503.309 ops/s -Iteration 1: 450419.673 ops/s +# Warmup Iteration 1: Using SEED=982289941023 as seed for Random +216218.755 ops/s +Iteration 1: 366577.893 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 450419.673 ops/s + 366577.893 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1226,20 +516,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=836712782074 as seed for Random -33653.538 ops/s -Iteration 1: 39544.164 ops/s +# Warmup Iteration 1: Using SEED=995238389732 as seed for Random +34877.773 ops/s +Iteration 1: 45044.943 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 39544.164 ops/s + 45044.943 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1249,20 +539,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=849479360891 as seed for Random -16492.577 ops/s -Iteration 1: 37785.504 ops/s +# Warmup Iteration 1: Using SEED=1008155068694 as seed for Random +34842.279 ops/s +Iteration 1: 68451.363 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 37785.504 ops/s + 68451.363 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1272,20 +562,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=862330857977 as seed for Random -69215.113 ops/s -Iteration 1: 88422.604 ops/s +# Warmup Iteration 1: Using SEED=1021151560204 as seed for Random +48821.107 ops/s +Iteration 1: 66897.241 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 88422.604 ops/s + 66897.241 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1295,20 +585,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=875130040010 as seed for Random -35422.888 ops/s -Iteration 1: 159740.891 ops/s +# Warmup Iteration 1: Using SEED=1034237918771 as seed for Random +11193.867 ops/s +Iteration 1: 12443.013 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 159740.891 ops/s + 12443.013 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1318,20 +608,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=888002426965 as seed for Random -46953.057 ops/s -Iteration 1: 56881.984 ops/s +# Warmup Iteration 1: Using SEED=1047299374546 as seed for Random +98670.592 ops/s +Iteration 1: 131761.713 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 56881.984 ops/s + 131761.713 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1341,20 +631,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=900877707245 as seed for Random -98613.780 ops/s -Iteration 1: 256607.443 ops/s +# Warmup Iteration 1: Using SEED=1060286635076 as seed for Random +75793.727 ops/s +Iteration 1: 181811.167 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 256607.443 ops/s + 181811.167 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1364,20 +654,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:00 +# Run progress: 84.85% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=913753801630 as seed for Random -86513.817 ops/s -Iteration 1: 110560.382 ops/s +# Warmup Iteration 1: Using SEED=1073311529676 as seed for Random +67527.177 ops/s +Iteration 1: 73024.695 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 110560.382 ops/s + 73024.695 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1387,20 +677,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=926608641775 as seed for Random -37426.440 ops/s -Iteration 1: 52969.311 ops/s +# Warmup Iteration 1: Using SEED=1086278672529 as seed for Random +78553.777 ops/s +Iteration 1: 124396.539 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 52969.311 ops/s + 124396.539 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1410,20 +700,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=939406284591 as seed for Random -48582.586 ops/s -Iteration 1: 64689.401 ops/s +# Warmup Iteration 1: Using SEED=1099260092222 as seed for Random +52575.491 ops/s +Iteration 1: 73170.623 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 64689.401 ops/s + 73170.623 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1433,20 +723,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:24 +# Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=952194166718 as seed for Random -175443.468 ops/s -Iteration 1: 344825.876 ops/s +# Warmup Iteration 1: Using SEED=1112244987490 as seed for Random +135281.713 ops/s +Iteration 1: 270309.204 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 344825.876 ops/s + 270309.204 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1456,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:12 +# Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=965007902259 as seed for Random -166697.769 ops/s -Iteration 1: 249413.596 ops/s +# Warmup Iteration 1: Using SEED=1125310132779 as seed for Random +54145.160 ops/s +Iteration 1: 188717.719 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 249413.596 ops/s + 188717.719 ops/s -# Run complete. Total time: 00:06:40 +# Run complete. Total time: 00:07:09 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1476,34 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 645501.494 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 429903.510 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 673015.363 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 640112.174 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 248895.943 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 33906.722 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 290517.430 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 281591.652 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 402387.759 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 447586.370 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 306059.000 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 304739.202 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 61137.809 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 426891.468 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 238625.555 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 321222.547 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 57772.331 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 334091.021 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 260677.192 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 450419.673 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 39544.164 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 37785.504 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 88422.604 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 159740.891 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 56881.984 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 256607.443 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 110560.382 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 52969.311 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 64689.401 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 344825.876 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 249413.596 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 503480.007 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 389555.879 ops/s +c.g.f.j.databind.Deserialization.boon thrpt 152912.969 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 500718.278 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 474258.908 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 189378.031 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 30399.908 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 193095.437 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 182381.991 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 321651.279 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 380743.343 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 330178.366 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 245459.548 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 51291.601 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 405706.511 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 230983.211 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 190667.061 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 126391.523 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 47219.946 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 215553.706 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 192307.437 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 366577.893 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 45044.943 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 68451.363 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 66897.241 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 12443.013 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 131761.713 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 181811.167 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 73024.695 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 124396.539 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 73170.623 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 270309.204 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 188717.719 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt index 26722bb..06dbac2 100644 --- a/output/users-deser-1-10.txt +++ b/output/users-deser-1-10.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1379370200169 as seed for Random -56479.908 ops/s -Iteration 1: 67682.818 ops/s +# Warmup Iteration 1: Using SEED=1569645277210 as seed for Random +39789.836 ops/s +Iteration 1: 49358.755 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 67682.818 ops/s + 49358.755 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:54 +# Run progress: 3.03% complete, ETA 00:06:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1392280842510 as seed for Random -34265.373 ops/s -Iteration 1: 47078.282 ops/s +# Warmup Iteration 1: Using SEED=1582628518196 as seed for Random +34548.809 ops/s +Iteration 1: 43719.755 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 47078.282 ops/s + 43719.755 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,328 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:41 +# Run progress: 6.06% complete, ETA 00:06:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1405164417311 as seed for Random - - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=1595667734265 as seed for Random +19139.276 ops/s +Iteration 1: 24603.709 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": + 24603.709 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -387,20 +79,20 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:25 +# Run progress: 9.09% complete, ETA 00:06:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1405860804845 as seed for Random -52230.929 ops/s -Iteration 1: 68017.008 ops/s +# Warmup Iteration 1: Using SEED=1608708380515 as seed for Random +52704.546 ops/s +Iteration 1: 60453.435 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 68017.008 ops/s + 60453.435 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -410,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:46 +# Run progress: 12.12% complete, ETA 00:06:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1418747970082 as seed for Random -62018.613 ops/s -Iteration 1: 71116.913 ops/s +# Warmup Iteration 1: Using SEED=1621735064049 as seed for Random +49079.518 ops/s +Iteration 1: 54471.428 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 71116.913 ops/s + 54471.428 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -433,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:53 +# Run progress: 15.15% complete, ETA 00:06:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1431629714954 as seed for Random -28076.407 ops/s -Iteration 1: 43085.593 ops/s +# Warmup Iteration 1: Using SEED=1634754954157 as seed for Random +18535.209 ops/s +Iteration 1: 26909.434 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 43085.593 ops/s + 26909.434 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -456,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:53 +# Run progress: 18.18% complete, ETA 00:05:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1444437015748 as seed for Random -1910.950 ops/s -Iteration 1: 4174.843 ops/s +# Warmup Iteration 1: Using SEED=1647789515566 as seed for Random +1395.392 ops/s +Iteration 1: 5698.313 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 4174.843 ops/s + 5698.313 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -479,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:49 +# Run progress: 21.21% complete, ETA 00:05:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1457343701553 as seed for Random -34140.888 ops/s -Iteration 1: 40548.492 ops/s +# Warmup Iteration 1: Using SEED=1660891882974 as seed for Random +17195.808 ops/s +Iteration 1: 27715.434 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 40548.492 ops/s + 27715.434 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -502,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:43 +# Run progress: 24.24% complete, ETA 00:05:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1470151525398 as seed for Random -29393.977 ops/s -Iteration 1: 39168.975 ops/s +# Warmup Iteration 1: Using SEED=1673893562136 as seed for Random +20262.091 ops/s +Iteration 1: 27339.429 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 39168.975 ops/s + 27339.429 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -525,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:36 +# Run progress: 27.27% complete, ETA 00:05:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1482973537085 as seed for Random -36193.347 ops/s -Iteration 1: 47942.880 ops/s +# Warmup Iteration 1: Using SEED=1686886903464 as seed for Random +30336.799 ops/s +Iteration 1: 42054.877 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 47942.880 ops/s + 42054.877 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -548,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:28 +# Run progress: 30.30% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1495818632929 as seed for Random -42698.342 ops/s -Iteration 1: 52966.419 ops/s +# Warmup Iteration 1: Using SEED=1699922140624 as seed for Random +36367.590 ops/s +Iteration 1: 46200.960 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 52966.419 ops/s + 46200.960 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -571,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:18 +# Run progress: 33.33% complete, ETA 00:04:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1508635945546 as seed for Random -46506.864 ops/s -Iteration 1: 54366.413 ops/s +# Warmup Iteration 1: Using SEED=1712892498691 as seed for Random +37803.655 ops/s +Iteration 1: 42457.306 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 54366.413 ops/s + 42457.306 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -594,20 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:08 +# Run progress: 36.36% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1521447889493 as seed for Random -22359.184 ops/s -Iteration 1: 31151.110 ops/s +# Warmup Iteration 1: Using SEED=1725953922400 as seed for Random +21535.392 ops/s +Iteration 1: 26927.283 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 31151.110 ops/s + 26927.283 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -617,20 +309,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:58 +# Run progress: 39.39% complete, ETA 00:04:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1534270865491 as seed for Random -4362.389 ops/s -Iteration 1: 8038.979 ops/s +# Warmup Iteration 1: Using SEED=1738983894927 as seed for Random +5037.456 ops/s +Iteration 1: 7226.684 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 8038.979 ops/s + 7226.684 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -640,1472 +332,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1547099275781 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@32318428 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@556e661d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5cc62eec with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@503a20d7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5c8f4203 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1be5b23b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6780fd65 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1510126f with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3cd93ee6 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@143ae2cc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@c7ec61a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@71e16726 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@79b4aa38 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@67c522b1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@14754a41 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=1751963795269 as seed for Random +29689.635 ops/s +Iteration 1: 48098.749 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": + 48098.749 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2115,20 +355,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:23 +# Run progress: 45.45% complete, ETA 00:03:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1548810248155 as seed for Random -42047.576 ops/s -Iteration 1: 51699.796 ops/s +# Warmup Iteration 1: Using SEED=1764977329641 as seed for Random +18802.811 ops/s +Iteration 1: 24971.797 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 51699.796 ops/s + 24971.797 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2138,20 +378,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:13 +# Run progress: 48.48% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1561629502407 as seed for Random -32786.207 ops/s -Iteration 1: 47884.040 ops/s +# Warmup Iteration 1: Using SEED=1777985359429 as seed for Random +26673.693 ops/s +Iteration 1: 36541.557 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 47884.040 ops/s + 36541.557 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2161,20 +401,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:03 +# Run progress: 51.52% complete, ETA 00:03:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1574430217119 as seed for Random -25136.633 ops/s -Iteration 1: 32210.173 ops/s +# Warmup Iteration 1: Using SEED=1790946950023 as seed for Random +16652.890 ops/s +Iteration 1: 17595.924 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 32210.173 ops/s + 17595.924 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2184,20 +424,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:53 +# Run progress: 54.55% complete, ETA 00:03:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1587311298392 as seed for Random -3373.738 ops/s -Iteration 1: 6151.500 ops/s +# Warmup Iteration 1: Using SEED=1803990226578 as seed for Random +2767.589 ops/s +Iteration 1: 5686.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 6151.500 ops/s + 5686.166 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2207,20 +447,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:42 +# Run progress: 57.58% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1600148020213 as seed for Random -25556.528 ops/s -Iteration 1: 39999.197 ops/s +# Warmup Iteration 1: Using SEED=1816983970582 as seed for Random +19102.572 ops/s +Iteration 1: 31736.189 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 39999.197 ops/s + 31736.189 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2230,20 +470,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1613061865365 as seed for Random -18946.052 ops/s -Iteration 1: 27013.421 ops/s +# Warmup Iteration 1: Using SEED=1830079004823 as seed for Random +12020.266 ops/s +Iteration 1: 27029.392 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 27013.421 ops/s + 27029.392 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2253,20 +493,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1625978797482 as seed for Random -37577.691 ops/s -Iteration 1: 53003.531 ops/s +# Warmup Iteration 1: Using SEED=1843113552557 as seed for Random +34707.398 ops/s +Iteration 1: 45418.605 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 53003.531 ops/s + 45418.605 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2276,20 +516,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1638828122052 as seed for Random -12793.620 ops/s -Iteration 1: 22537.800 ops/s +# Warmup Iteration 1: Using SEED=1856138845222 as seed for Random +7758.198 ops/s +Iteration 1: 17012.309 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 22537.800 ops/s + 17012.309 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2299,20 +539,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1651729693190 as seed for Random -3086.286 ops/s -Iteration 1: 5119.970 ops/s +# Warmup Iteration 1: Using SEED=1869107588656 as seed for Random +952.772 ops/s +Iteration 1: 1019.882 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 5119.970 ops/s + 1019.882 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2322,20 +562,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1664617228827 as seed for Random -7401.024 ops/s -Iteration 1: 11843.017 ops/s +# Warmup Iteration 1: Using SEED=1882153333800 as seed for Random +5669.124 ops/s +Iteration 1: 10429.325 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 11843.017 ops/s + 10429.325 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2345,20 +585,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1677517724461 as seed for Random -11685.141 ops/s -Iteration 1: 23447.314 ops/s +# Warmup Iteration 1: Using SEED=1895157678229 as seed for Random +1507.821 ops/s +Iteration 1: 1507.646 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 23447.314 ops/s + 1507.646 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2368,20 +608,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1690439692686 as seed for Random -4615.203 ops/s -Iteration 1: 5999.845 ops/s +# Warmup Iteration 1: Using SEED=1908200797407 as seed for Random +10227.988 ops/s +Iteration 1: 13897.753 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 5999.845 ops/s + 13897.753 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2391,20 +631,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1703263592543 as seed for Random -6228.671 ops/s -Iteration 1: 28244.113 ops/s +# Warmup Iteration 1: Using SEED=1921224093481 as seed for Random +6533.680 ops/s +Iteration 1: 13670.275 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 28244.113 ops/s + 13670.275 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2414,20 +654,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:00 +# Run progress: 84.85% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1716076253392 as seed for Random -18400.071 ops/s -Iteration 1: 24965.013 ops/s +# Warmup Iteration 1: Using SEED=1934181656579 as seed for Random +14713.551 ops/s +Iteration 1: 19314.774 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 24965.013 ops/s + 19314.774 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2437,20 +677,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1728886931961 as seed for Random -4559.295 ops/s -Iteration 1: 5844.630 ops/s +# Warmup Iteration 1: Using SEED=1947241940085 as seed for Random +8237.615 ops/s +Iteration 1: 13866.376 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 5844.630 ops/s + 13866.376 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2460,20 +700,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1741754825560 as seed for Random -4894.988 ops/s -Iteration 1: 8660.938 ops/s +# Warmup Iteration 1: Using SEED=1960241373190 as seed for Random +6190.639 ops/s +Iteration 1: 8621.186 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 8660.938 ops/s + 8621.186 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2483,20 +723,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:24 +# Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1754558055655 as seed for Random -31356.510 ops/s -Iteration 1: 44343.876 ops/s +# Warmup Iteration 1: Using SEED=1973241276756 as seed for Random +6261.236 ops/s +Iteration 1: 9445.532 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 44343.876 ops/s + 9445.532 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2506,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:12 +# Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1767442599511 as seed for Random -17021.638 ops/s -Iteration 1: 31272.378 ops/s +# Warmup Iteration 1: Using SEED=1986307429755 as seed for Random +16409.890 ops/s +Iteration 1: 26782.656 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 31272.378 ops/s + 26782.656 ops/s -# Run complete. Total time: 00:06:41 +# Run complete. Total time: 00:07:09 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2526,34 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 67682.818 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 47078.282 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 68017.008 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 71116.913 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 43085.593 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 4174.843 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 40548.492 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 39168.975 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 47942.880 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 52966.419 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 54366.413 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 31151.110 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 8038.979 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 51699.796 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 47884.040 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 32210.173 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 6151.500 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 39999.197 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 27013.421 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 53003.531 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 22537.800 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 5119.970 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 11843.017 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 23447.314 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 5999.845 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 28244.113 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 24965.013 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 5844.630 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 8660.938 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 44343.876 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 31272.378 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 49358.755 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 43719.755 ops/s +c.g.f.j.databind.Deserialization.boon thrpt 24603.709 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 60453.435 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 54471.428 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 26909.434 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 5698.313 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 27715.434 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 27339.429 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 42054.877 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 46200.960 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 42457.306 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 26927.283 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 7226.684 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 48098.749 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 24971.797 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 36541.557 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 17595.924 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 5686.166 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 31736.189 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 27029.392 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 45418.605 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 17012.309 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 1019.882 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 10429.325 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 1507.646 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 13897.753 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 13670.275 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 19314.774 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 13866.376 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 8621.186 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 9445.532 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 26782.656 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt index b42ef3d..3bc818c 100644 --- a/output/users-deser-1-100.txt +++ b/output/users-deser-1-100.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2182629856506 as seed for Random -4504.088 ops/s -Iteration 1: 6262.039 ops/s +# Warmup Iteration 1: Using SEED=2432404590946 as seed for Random +3583.771 ops/s +Iteration 1: 4442.822 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 6262.039 ops/s + 4442.822 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:52 +# Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2195480980131 as seed for Random -3058.566 ops/s -Iteration 1: 4731.451 ops/s +# Warmup Iteration 1: Using SEED=2445486924483 as seed for Random +3525.323 ops/s +Iteration 1: 4291.921 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 4731.451 ops/s + 4291.921 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,328 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:39 +# Run progress: 6.06% complete, ETA 00:06:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2208385716796 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=2458671522971 as seed for Random +2142.983 ops/s +Iteration 1: 2605.311 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": + 2605.311 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -387,20 +79,20 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:25 +# Run progress: 9.09% complete, ETA 00:06:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2209098174604 as seed for Random -5516.517 ops/s -Iteration 1: 8044.483 ops/s +# Warmup Iteration 1: Using SEED=2471713673592 as seed for Random +4795.097 ops/s +Iteration 1: 6563.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 8044.483 ops/s + 6563.166 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -410,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:45 +# Run progress: 12.12% complete, ETA 00:06:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2221978265522 as seed for Random -5457.857 ops/s -Iteration 1: 6627.185 ops/s +# Warmup Iteration 1: Using SEED=2484722873987 as seed for Random +4245.651 ops/s +Iteration 1: 4602.891 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 6627.185 ops/s + 4602.891 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -433,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:52 +# Run progress: 15.15% complete, ETA 00:06:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2234815293607 as seed for Random -2623.592 ops/s -Iteration 1: 4054.108 ops/s +# Warmup Iteration 1: Using SEED=2497739719821 as seed for Random +1977.002 ops/s +Iteration 1: 2575.213 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 4054.108 ops/s + 2575.213 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -456,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:52 +# Run progress: 18.18% complete, ETA 00:05:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2247667965067 as seed for Random -235.132 ops/s -Iteration 1: 407.162 ops/s +# Warmup Iteration 1: Using SEED=2510758396927 as seed for Random +137.397 ops/s +Iteration 1: 349.357 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 407.162 ops/s + 349.357 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -479,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:49 +# Run progress: 21.21% complete, ETA 00:05:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2260634374787 as seed for Random -3024.132 ops/s -Iteration 1: 3485.940 ops/s +# Warmup Iteration 1: Using SEED=2523894463455 as seed for Random +2287.832 ops/s +Iteration 1: 2958.792 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 3485.940 ops/s + 2958.792 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -502,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:44 +# Run progress: 24.24% complete, ETA 00:05:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2273541054993 as seed for Random -3107.881 ops/s -Iteration 1: 4045.513 ops/s +# Warmup Iteration 1: Using SEED=2536946734554 as seed for Random +1908.651 ops/s +Iteration 1: 2888.291 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 4045.513 ops/s + 2888.291 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -525,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:36 +# Run progress: 27.27% complete, ETA 00:05:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2286453216020 as seed for Random -2971.024 ops/s -Iteration 1: 4975.077 ops/s +# Warmup Iteration 1: Using SEED=2549980087566 as seed for Random +3354.592 ops/s +Iteration 1: 4301.470 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 4975.077 ops/s + 4301.470 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -548,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:28 +# Run progress: 30.30% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2299351598819 as seed for Random -4645.615 ops/s -Iteration 1: 5714.070 ops/s +# Warmup Iteration 1: Using SEED=2562959219887 as seed for Random +4227.369 ops/s +Iteration 1: 4577.042 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 5714.070 ops/s + 4577.042 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -571,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:19 +# Run progress: 33.33% complete, ETA 00:04:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2312216784195 as seed for Random -4096.701 ops/s -Iteration 1: 5364.237 ops/s +# Warmup Iteration 1: Using SEED=2575956422903 as seed for Random +3779.823 ops/s +Iteration 1: 4473.246 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 5364.237 ops/s + 4473.246 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -594,20 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:09 +# Run progress: 36.36% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2325056261953 as seed for Random -2603.521 ops/s -Iteration 1: 3665.946 ops/s +# Warmup Iteration 1: Using SEED=2588969682590 as seed for Random +1187.612 ops/s +Iteration 1: 1563.461 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 3665.946 ops/s + 1563.461 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -617,20 +309,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:58 +# Run progress: 39.39% complete, ETA 00:04:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2337877900995 as seed for Random -617.887 ops/s -Iteration 1: 877.607 ops/s +# Warmup Iteration 1: Using SEED=2601942593913 as seed for Random +414.041 ops/s +Iteration 1: 696.067 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 877.607 ops/s + 696.067 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -640,422 +332,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:48 +# Run progress: 42.42% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2350736826669 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@11bd065b with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(com.jsoniter.JsonIterator)" because "decoder" is null - at com.jsoniter.Codegen$1.decode(Codegen.java:115) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=2614975092463 as seed for Random +4864.966 ops/s +Iteration 1: 4747.883 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": + 4747.883 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1065,20 +355,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Decoder.decode(c # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:23 +# Run progress: 45.45% complete, ETA 00:03:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2352438970016 as seed for Random -3759.629 ops/s -Iteration 1: 4865.049 ops/s +# Warmup Iteration 1: Using SEED=2627977882453 as seed for Random +1920.591 ops/s +Iteration 1: 2415.508 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 4865.049 ops/s + 2415.508 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1088,20 +378,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:14 +# Run progress: 48.48% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2365269388623 as seed for Random -1749.145 ops/s -Iteration 1: 4309.427 ops/s +# Warmup Iteration 1: Using SEED=2640974300671 as seed for Random +2962.258 ops/s +Iteration 1: 4430.349 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 4309.427 ops/s + 4430.349 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1111,20 +401,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:04 +# Run progress: 51.52% complete, ETA 00:03:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2378174886692 as seed for Random -1974.850 ops/s -Iteration 1: 3251.009 ops/s +# Warmup Iteration 1: Using SEED=2654017090334 as seed for Random +1679.371 ops/s +Iteration 1: 2206.451 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 3251.009 ops/s + 2206.451 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1134,20 +424,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:02:53 +# Run progress: 54.55% complete, ETA 00:03:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2391014491442 as seed for Random -287.417 ops/s -Iteration 1: 625.223 ops/s +# Warmup Iteration 1: Using SEED=2667038379784 as seed for Random +177.775 ops/s +Iteration 1: 568.426 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 625.223 ops/s + 568.426 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1157,20 +447,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:43 +# Run progress: 57.58% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2403887325308 as seed for Random -1474.073 ops/s -Iteration 1: 3680.277 ops/s +# Warmup Iteration 1: Using SEED=2680181668446 as seed for Random +2057.704 ops/s +Iteration 1: 3303.993 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 3680.277 ops/s + 3303.993 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1180,20 +470,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:32 +# Run progress: 60.61% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2416748366321 as seed for Random -792.659 ops/s -Iteration 1: 3702.020 ops/s +# Warmup Iteration 1: Using SEED=2693221004035 as seed for Random +1807.143 ops/s +Iteration 1: 2915.695 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 3702.020 ops/s + 2915.695 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1203,20 +493,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:21 +# Run progress: 63.64% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2429642728910 as seed for Random -2053.318 ops/s -Iteration 1: 5199.240 ops/s +# Warmup Iteration 1: Using SEED=2706208893829 as seed for Random +2916.124 ops/s +Iteration 1: 4413.922 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 5199.240 ops/s + 4413.922 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1226,20 +516,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2442522344090 as seed for Random -1213.168 ops/s -Iteration 1: 2721.133 ops/s +# Warmup Iteration 1: Using SEED=2719279701981 as seed for Random +1081.549 ops/s +Iteration 1: 2082.857 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 2721.133 ops/s + 2082.857 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1249,20 +539,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2455372849055 as seed for Random -348.154 ops/s -Iteration 1: 537.440 ops/s +# Warmup Iteration 1: Using SEED=2732437276136 as seed for Random +653.345 ops/s +Iteration 1: 1016.873 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 537.440 ops/s + 1016.873 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1272,20 +562,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:47 +# Run progress: 72.73% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2468221255673 as seed for Random -723.143 ops/s -Iteration 1: 1217.609 ops/s +# Warmup Iteration 1: Using SEED=2745590553803 as seed for Random +794.130 ops/s +Iteration 1: 1144.712 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 1217.609 ops/s + 1144.712 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1295,20 +585,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2481074798323 as seed for Random -1844.745 ops/s -Iteration 1: 2784.259 ops/s +# Warmup Iteration 1: Using SEED=2758608570303 as seed for Random +573.150 ops/s +Iteration 1: 2026.165 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 2784.259 ops/s + 2026.165 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1318,20 +608,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2494061628747 as seed for Random -439.857 ops/s -Iteration 1: 590.736 ops/s +# Warmup Iteration 1: Using SEED=2771655197588 as seed for Random +984.199 ops/s +Iteration 1: 1334.188 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 590.736 ops/s + 1334.188 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1341,20 +631,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:12 +# Run progress: 81.82% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2506992946011 as seed for Random -998.911 ops/s -Iteration 1: 2850.443 ops/s +# Warmup Iteration 1: Using SEED=2784651668810 as seed for Random +1258.249 ops/s +Iteration 1: 1797.283 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 2850.443 ops/s + 1797.283 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1364,20 +654,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:00 +# Run progress: 84.85% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2519904675436 as seed for Random -1642.084 ops/s -Iteration 1: 3097.399 ops/s +# Warmup Iteration 1: Using SEED=2797773643408 as seed for Random +1965.825 ops/s +Iteration 1: 2388.118 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 3097.399 ops/s + 2388.118 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1387,20 +677,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2532713763269 as seed for Random -488.983 ops/s -Iteration 1: 597.282 ops/s +# Warmup Iteration 1: Using SEED=2810942692110 as seed for Random +886.395 ops/s +Iteration 1: 1413.139 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 597.282 ops/s + 1413.139 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1410,20 +700,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2545650995197 as seed for Random -339.382 ops/s -Iteration 1: 645.077 ops/s +# Warmup Iteration 1: Using SEED=2824028671407 as seed for Random +536.576 ops/s +Iteration 1: 699.891 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 645.077 ops/s + 699.891 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1433,20 +723,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:24 +# Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2558532958878 as seed for Random -1913.358 ops/s -Iteration 1: 4186.443 ops/s +# Warmup Iteration 1: Using SEED=2837091235813 as seed for Random +472.592 ops/s +Iteration 1: 2747.867 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 4186.443 ops/s + 2747.867 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1456,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:12 +# Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2571349526672 as seed for Random -2859.334 ops/s -Iteration 1: 3797.361 ops/s +# Warmup Iteration 1: Using SEED=2850102718363 as seed for Random +664.396 ops/s +Iteration 1: 2456.656 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 3797.361 ops/s + 2456.656 ops/s -# Run complete. Total time: 00:06:41 +# Run complete. Total time: 00:07:10 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1476,34 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 6262.039 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4731.451 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 8044.483 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 6627.185 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 4054.108 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 407.162 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 3485.940 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 4045.513 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 4975.077 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 5714.070 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 5364.237 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 3665.946 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 877.607 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 4865.049 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 4309.427 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 3251.009 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 625.223 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 3680.277 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 3702.020 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 5199.240 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2721.133 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 537.440 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 1217.609 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2784.259 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 590.736 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 2850.443 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 3097.399 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 597.282 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 645.077 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 4186.443 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 3797.361 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 4442.822 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4291.921 ops/s +c.g.f.j.databind.Deserialization.boon thrpt 2605.311 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 6563.166 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 4602.891 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 2575.213 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 349.357 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 2958.792 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 2888.291 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 4301.470 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 4577.042 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 4473.246 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 1563.461 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 696.067 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 4747.883 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 2415.508 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 4430.349 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 2206.451 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 568.426 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 3303.993 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 2915.695 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 4413.922 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2082.857 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 1016.873 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 1144.712 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2026.165 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 1334.188 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 1797.283 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 2388.118 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 1413.139 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 699.891 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 2747.867 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 2456.656 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt index 16e2198..6970f02 100644 --- a/output/users-ser-1-1.txt +++ b/output/users-ser-1-1.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=176852379080 as seed for Random -730402.784 ops/s -Iteration 1: 801492.955 ops/s +# Warmup Iteration 1: Using SEED=278831861479 as seed for Random +362763.098 ops/s +Iteration 1: 402027.331 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 801492.955 ops/s + 402027.331 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:54 +# Run progress: 3.03% complete, ETA 00:06:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=189676020248 as seed for Random -479235.086 ops/s -Iteration 1: 605111.642 ops/s +# Warmup Iteration 1: Using SEED=291871846703 as seed for Random +373386.505 ops/s +Iteration 1: 424056.837 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 605111.642 ops/s + 424056.837 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,347 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:38 +# Run progress: 6.06% complete, ETA 00:06:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=202453547075 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more +# Warmup Iteration 1: Using SEED=304829559732 as seed for Random +111215.338 ops/s +Iteration 1: 127070.086 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": + 127070.086 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -406,20 +79,20 @@ Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:24 +# Run progress: 9.09% complete, ETA 00:06:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=203164589698 as seed for Random -749962.225 ops/s -Iteration 1: 883524.168 ops/s +# Warmup Iteration 1: Using SEED=317955234224 as seed for Random +501857.737 ops/s +Iteration 1: 574958.053 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 883524.168 ops/s + 574958.053 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -429,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:44 +# Run progress: 12.12% complete, ETA 00:06:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=215966273415 as seed for Random -747443.926 ops/s -Iteration 1: 767974.263 ops/s +# Warmup Iteration 1: Using SEED=331029002173 as seed for Random +459310.678 ops/s +Iteration 1: 497796.244 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 767974.263 ops/s + 497796.244 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -452,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:51 +# Run progress: 15.15% complete, ETA 00:06:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=228792551703 as seed for Random -420422.385 ops/s -Iteration 1: 638135.424 ops/s +# Warmup Iteration 1: Using SEED=344070857445 as seed for Random +384824.004 ops/s +Iteration 1: 513071.165 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 638135.424 ops/s + 513071.165 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -475,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:52 +# Run progress: 18.18% complete, ETA 00:05:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=241615517059 as seed for Random -2437.809 ops/s -Iteration 1: 1327.259 ops/s +# Warmup Iteration 1: Using SEED=357075678763 as seed for Random +1809.332 ops/s +Iteration 1: 962.138 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1327.259 ops/s + 962.138 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -498,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:48 +# Run progress: 21.21% complete, ETA 00:05:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=254487067027 as seed for Random -352373.972 ops/s -Iteration 1: 416580.787 ops/s +# Warmup Iteration 1: Using SEED=370141974563 as seed for Random +191095.430 ops/s +Iteration 1: 236068.111 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 416580.787 ops/s + 236068.111 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -521,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:43 +# Run progress: 24.24% complete, ETA 00:05:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=267357542292 as seed for Random -143939.059 ops/s -Iteration 1: 204228.493 ops/s +# Warmup Iteration 1: Using SEED=383198141837 as seed for Random +117956.049 ops/s +Iteration 1: 179739.026 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 204228.493 ops/s + 179739.026 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -544,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:35 +# Run progress: 27.27% complete, ETA 00:05:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=280197084497 as seed for Random -538301.870 ops/s -Iteration 1: 638762.491 ops/s +# Warmup Iteration 1: Using SEED=396160073782 as seed for Random +388895.518 ops/s +Iteration 1: 440961.442 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 638762.491 ops/s + 440961.442 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -567,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:27 +# Run progress: 30.30% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=293093847541 as seed for Random -527626.859 ops/s -Iteration 1: 617521.972 ops/s +# Warmup Iteration 1: Using SEED=409209744351 as seed for Random +376389.128 ops/s +Iteration 1: 437757.714 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 617521.972 ops/s + 437757.714 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -590,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:18 +# Run progress: 33.33% complete, ETA 00:04:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=305947623445 as seed for Random -527735.297 ops/s -Iteration 1: 592238.407 ops/s +# Warmup Iteration 1: Using SEED=422195630825 as seed for Random +402329.435 ops/s +Iteration 1: 456866.826 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 592238.407 ops/s + 456866.826 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -613,20 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:08 +# Run progress: 36.36% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=318899778294 as seed for Random -40378.086 ops/s -Iteration 1: 53583.169 ops/s +# Warmup Iteration 1: Using SEED=435163093582 as seed for Random +75134.086 ops/s +Iteration 1: 114950.380 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 53583.169 ops/s + 114950.380 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -636,20 +309,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:58 +# Run progress: 39.39% complete, ETA 00:04:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=331727021293 as seed for Random -150551.828 ops/s -Iteration 1: 204851.561 ops/s +# Warmup Iteration 1: Using SEED=448121265061 as seed for Random +113030.612 ops/s +Iteration 1: 162048.425 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 204851.561 ops/s + 162048.425 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -659,375 +332,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=344525330308 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=461100291498 as seed for Random +356317.649 ops/s +Iteration 1: 401701.229 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": + 401701.229 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1037,20 +355,20 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:23 +# Run progress: 45.45% complete, ETA 00:03:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=346212476730 as seed for Random -302666.050 ops/s -Iteration 1: 343855.418 ops/s +# Warmup Iteration 1: Using SEED=474050315625 as seed for Random +146963.702 ops/s +Iteration 1: 164786.344 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 343855.418 ops/s + 164786.344 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1060,20 +378,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:13 +# Run progress: 48.48% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=359016951045 as seed for Random -533000.298 ops/s -Iteration 1: 630186.029 ops/s +# Warmup Iteration 1: Using SEED=487038432398 as seed for Random +220480.704 ops/s +Iteration 1: 390960.550 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 630186.029 ops/s + 390960.550 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1083,20 +401,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:03 +# Run progress: 51.52% complete, ETA 00:03:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=371826480852 as seed for Random -279450.727 ops/s -Iteration 1: 339483.721 ops/s +# Warmup Iteration 1: Using SEED=499992139097 as seed for Random +177116.131 ops/s +Iteration 1: 208668.923 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 339483.721 ops/s + 208668.923 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1106,20 +424,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:53 +# Run progress: 54.55% complete, ETA 00:03:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=384611807963 as seed for Random -118035.803 ops/s -Iteration 1: 182611.822 ops/s +# Warmup Iteration 1: Using SEED=513010295613 as seed for Random +68192.172 ops/s +Iteration 1: 132977.950 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 182611.822 ops/s + 132977.950 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1129,20 +447,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:42 +# Run progress: 57.58% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=397415950818 as seed for Random -327081.325 ops/s -Iteration 1: 399279.361 ops/s +# Warmup Iteration 1: Using SEED=525994098176 as seed for Random +148592.416 ops/s +Iteration 1: 217137.610 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 399279.361 ops/s + 217137.610 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1152,20 +470,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=410237161260 as seed for Random -142096.121 ops/s -Iteration 1: 178465.148 ops/s +# Warmup Iteration 1: Using SEED=539095188148 as seed for Random +91151.024 ops/s +Iteration 1: 109505.035 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 178465.148 ops/s + 109505.035 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1175,20 +493,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=423080527731 as seed for Random -364706.325 ops/s -Iteration 1: 530290.827 ops/s +# Warmup Iteration 1: Using SEED=552107321726 as seed for Random +293915.946 ops/s +Iteration 1: 389066.692 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 530290.827 ops/s + 389066.692 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1198,20 +516,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=435873499430 as seed for Random -262038.607 ops/s -Iteration 1: 468918.297 ops/s +# Warmup Iteration 1: Using SEED=565142798306 as seed for Random +12163.306 ops/s +Iteration 1: 125492.222 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 468918.297 ops/s + 125492.222 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1221,20 +539,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=448697010242 as seed for Random -15872.627 ops/s -Iteration 1: 39253.429 ops/s +# Warmup Iteration 1: Using SEED=578242373503 as seed for Random +35140.274 ops/s +Iteration 1: 46197.001 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 39253.429 ops/s + 46197.001 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1244,20 +562,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=461524725880 as seed for Random -40065.822 ops/s -Iteration 1: 46198.286 ops/s +# Warmup Iteration 1: Using SEED=591282810406 as seed for Random +51902.860 ops/s +Iteration 1: 74617.078 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 46198.286 ops/s + 74617.078 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1267,20 +585,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=474387410869 as seed for Random -174112.841 ops/s -Iteration 1: 274445.686 ops/s +# Warmup Iteration 1: Using SEED=604356803881 as seed for Random +59172.297 ops/s +Iteration 1: 201748.269 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 274445.686 ops/s + 201748.269 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1290,20 +608,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=487171297292 as seed for Random -86180.083 ops/s -Iteration 1: 142125.027 ops/s +# Warmup Iteration 1: Using SEED=617378023449 as seed for Random +21069.104 ops/s +Iteration 1: 34307.359 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 142125.027 ops/s + 34307.359 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1313,20 +631,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=499995358154 as seed for Random -255758.556 ops/s -Iteration 1: 356861.961 ops/s +# Warmup Iteration 1: Using SEED=630406503355 as seed for Random +171628.114 ops/s +Iteration 1: 244488.768 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 356861.961 ops/s + 244488.768 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1336,20 +654,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:00 +# Run progress: 84.85% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=512871004259 as seed for Random -369378.335 ops/s -Iteration 1: 395646.407 ops/s +# Warmup Iteration 1: Using SEED=643460464742 as seed for Random +107653.322 ops/s +Iteration 1: 217650.682 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 395646.407 ops/s + 217650.682 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1359,20 +677,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=525737317618 as seed for Random -11698.035 ops/s -Iteration 1: 73535.845 ops/s +# Warmup Iteration 1: Using SEED=656401273142 as seed for Random +34759.069 ops/s +Iteration 1: 88535.441 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 73535.845 ops/s + 88535.441 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1382,20 +700,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=538530960354 as seed for Random -95412.625 ops/s -Iteration 1: 122943.033 ops/s +# Warmup Iteration 1: Using SEED=669419743462 as seed for Random +40323.179 ops/s +Iteration 1: 66114.364 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 122943.033 ops/s + 66114.364 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1405,20 +723,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:24 +# Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=551424513864 as seed for Random -26920.556 ops/s -Iteration 1: 54120.669 ops/s +# Warmup Iteration 1: Using SEED=682528353878 as seed for Random +25375.921 ops/s +Iteration 1: 42123.004 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 54120.669 ops/s + 42123.004 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1428,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:12 +# Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=564263509320 as seed for Random -111922.501 ops/s -Iteration 1: 166860.691 ops/s +# Warmup Iteration 1: Using SEED=695571976265 as seed for Random +52400.152 ops/s +Iteration 1: 108863.890 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 166860.691 ops/s + 108863.890 ops/s -# Run complete. Total time: 00:06:40 +# Run complete. Total time: 00:07:09 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1448,34 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 801492.955 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 605111.642 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 883524.168 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 767974.263 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 638135.424 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 1327.259 ops/s -c.g.f.j.databind.Serialization.genson thrpt 416580.787 ops/s -c.g.f.j.databind.Serialization.gson thrpt 204228.493 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 638762.491 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 617521.972 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 592238.407 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 53583.169 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 204851.561 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 343855.418 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 630186.029 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 339483.721 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 182611.822 ops/s -c.g.f.j.stream.Serialization.genson thrpt 399279.361 ops/s -c.g.f.j.stream.Serialization.gson thrpt 178465.148 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 530290.827 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 468918.297 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 39253.429 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 46198.286 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 274445.686 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 142125.027 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 356861.961 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 395646.407 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 73535.845 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 122943.033 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 54120.669 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 166860.691 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 402027.331 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 424056.837 ops/s +c.g.f.j.databind.Serialization.boon thrpt 127070.086 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 574958.053 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 497796.244 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 513071.165 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 962.138 ops/s +c.g.f.j.databind.Serialization.genson thrpt 236068.111 ops/s +c.g.f.j.databind.Serialization.gson thrpt 179739.026 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 440961.442 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 437757.714 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 456866.826 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 114950.380 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 162048.425 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 401701.229 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 164786.344 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 390960.550 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 208668.923 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 132977.950 ops/s +c.g.f.j.stream.Serialization.genson thrpt 217137.610 ops/s +c.g.f.j.stream.Serialization.gson thrpt 109505.035 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 389066.692 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 125492.222 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 46197.001 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 74617.078 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 201748.269 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 34307.359 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 244488.768 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 217650.682 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 88535.441 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 66114.364 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 42123.004 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 108863.890 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt index 2dd67da..9f13628 100644 --- a/output/users-ser-1-10.txt +++ b/output/users-ser-1-10.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=978405185810 as seed for Random -74737.049 ops/s -Iteration 1: 79597.056 ops/s +# Warmup Iteration 1: Using SEED=1139011290091 as seed for Random +57068.462 ops/s +Iteration 1: 61895.648 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 79597.056 ops/s + 61895.648 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:54 +# Run progress: 3.03% complete, ETA 00:06:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=991331211710 as seed for Random -64513.646 ops/s -Iteration 1: 77466.504 ops/s +# Warmup Iteration 1: Using SEED=1152006651862 as seed for Random +47252.359 ops/s +Iteration 1: 55431.030 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 77466.504 ops/s + 55431.030 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,347 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:39 +# Run progress: 6.06% complete, ETA 00:06:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1004176029023 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=1165014788399 as seed for Random +16245.317 ops/s +Iteration 1: 20235.166 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": + 20235.166 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -406,20 +79,20 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:25 +# Run progress: 9.09% complete, ETA 00:06:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1004893607939 as seed for Random -84702.257 ops/s -Iteration 1: 93209.858 ops/s +# Warmup Iteration 1: Using SEED=1178027822029 as seed for Random +73187.021 ops/s +Iteration 1: 77863.729 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 93209.858 ops/s + 77863.729 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -429,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:44 +# Run progress: 12.12% complete, ETA 00:06:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1017675787807 as seed for Random -80138.117 ops/s -Iteration 1: 88086.027 ops/s +# Warmup Iteration 1: Using SEED=1191081182087 as seed for Random +61155.265 ops/s +Iteration 1: 61176.284 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 88086.027 ops/s + 61176.284 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -452,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:52 +# Run progress: 15.15% complete, ETA 00:06:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1030593123621 as seed for Random -47765.992 ops/s -Iteration 1: 65455.296 ops/s +# Warmup Iteration 1: Using SEED=1204084057691 as seed for Random +27288.533 ops/s +Iteration 1: 39792.109 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 65455.296 ops/s + 39792.109 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -475,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:52 +# Run progress: 18.18% complete, ETA 00:05:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1043436029854 as seed for Random -597.126 ops/s -Iteration 1: 372.739 ops/s +# Warmup Iteration 1: Using SEED=1217081005020 as seed for Random +484.369 ops/s +Iteration 1: 387.617 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 372.739 ops/s + 387.617 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -498,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:49 +# Run progress: 21.21% complete, ETA 00:05:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1056332345128 as seed for Random -50883.282 ops/s -Iteration 1: 61382.386 ops/s +# Warmup Iteration 1: Using SEED=1230162504669 as seed for Random +29558.969 ops/s +Iteration 1: 37550.079 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 61382.386 ops/s + 37550.079 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -521,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:43 +# Run progress: 24.24% complete, ETA 00:05:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1069178020653 as seed for Random -18561.542 ops/s -Iteration 1: 23238.183 ops/s +# Warmup Iteration 1: Using SEED=1243173523680 as seed for Random +16028.535 ops/s +Iteration 1: 22213.333 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 23238.183 ops/s + 22213.333 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -544,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:36 +# Run progress: 27.27% complete, ETA 00:05:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1082060712080 as seed for Random -67946.455 ops/s -Iteration 1: 75312.178 ops/s +# Warmup Iteration 1: Using SEED=1256171604992 as seed for Random +49257.900 ops/s +Iteration 1: 55333.419 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 75312.178 ops/s + 55333.419 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -567,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:28 +# Run progress: 30.30% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1094926793504 as seed for Random -69384.214 ops/s -Iteration 1: 78989.185 ops/s +# Warmup Iteration 1: Using SEED=1269160183940 as seed for Random +50078.785 ops/s +Iteration 1: 56095.742 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 78989.185 ops/s + 56095.742 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -590,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:18 +# Run progress: 33.33% complete, ETA 00:04:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1107761026564 as seed for Random -63498.241 ops/s -Iteration 1: 72033.778 ops/s +# Warmup Iteration 1: Using SEED=1282181536265 as seed for Random +45598.444 ops/s +Iteration 1: 52299.831 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 72033.778 ops/s + 52299.831 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -613,20 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:08 +# Run progress: 36.36% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1120578231277 as seed for Random -4591.512 ops/s -Iteration 1: 5787.528 ops/s +# Warmup Iteration 1: Using SEED=1295147534640 as seed for Random +6488.848 ops/s +Iteration 1: 12509.281 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 5787.528 ops/s + 12509.281 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -636,20 +309,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:58 +# Run progress: 39.39% complete, ETA 00:04:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1133413997035 as seed for Random -17249.925 ops/s -Iteration 1: 23643.451 ops/s +# Warmup Iteration 1: Using SEED=1308143046761 as seed for Random +17174.637 ops/s +Iteration 1: 20438.610 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 23643.451 ops/s + 20438.610 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -659,1035 +332,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:47 +# Run progress: 42.42% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1146232224611 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more +# Warmup Iteration 1: Using SEED=1321119847567 as seed for Random +51613.484 ops/s +Iteration 1: 65049.786 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": + 65049.786 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1697,20 +355,20 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.e # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:22 +# Run progress: 45.45% complete, ETA 00:03:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1147037193269 as seed for Random -28843.713 ops/s -Iteration 1: 34448.032 ops/s +# Warmup Iteration 1: Using SEED=1334063871270 as seed for Random +26487.157 ops/s +Iteration 1: 18348.607 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 34448.032 ops/s + 18348.607 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1720,20 +378,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:12 +# Run progress: 48.48% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1159879696769 as seed for Random -45628.495 ops/s -Iteration 1: 64850.642 ops/s +# Warmup Iteration 1: Using SEED=1347075119749 as seed for Random +35915.156 ops/s +Iteration 1: 48441.433 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 64850.642 ops/s + 48441.433 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1743,20 +401,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:02 +# Run progress: 51.52% complete, ETA 00:03:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1172817105007 as seed for Random -29641.834 ops/s -Iteration 1: 37250.991 ops/s +# Warmup Iteration 1: Using SEED=1360059253693 as seed for Random +20887.080 ops/s +Iteration 1: 24748.221 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 37250.991 ops/s + 24748.221 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1766,20 +424,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:52 +# Run progress: 54.55% complete, ETA 00:03:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1185694283432 as seed for Random -15697.121 ops/s -Iteration 1: 28495.126 ops/s +# Warmup Iteration 1: Using SEED=1373112962840 as seed for Random +13676.284 ops/s +Iteration 1: 18626.118 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 28495.126 ops/s + 18626.118 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1789,20 +447,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:42 +# Run progress: 57.58% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1198520017708 as seed for Random -34859.192 ops/s -Iteration 1: 52465.627 ops/s +# Warmup Iteration 1: Using SEED=1386097505281 as seed for Random +15822.441 ops/s +Iteration 1: 32050.374 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 52465.627 ops/s + 32050.374 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1812,20 +470,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1211360684336 as seed for Random -12848.583 ops/s -Iteration 1: 17157.451 ops/s +# Warmup Iteration 1: Using SEED=1399130743604 as seed for Random +10971.903 ops/s +Iteration 1: 12258.445 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 17157.451 ops/s + 12258.445 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1835,20 +493,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1224268359292 as seed for Random -47665.429 ops/s -Iteration 1: 69233.397 ops/s +# Warmup Iteration 1: Using SEED=1412243190964 as seed for Random +34958.372 ops/s +Iteration 1: 49345.158 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 69233.397 ops/s + 49345.158 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1858,20 +516,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1237178613736 as seed for Random -65044.031 ops/s -Iteration 1: 79757.597 ops/s +# Warmup Iteration 1: Using SEED=1425226762125 as seed for Random +13497.605 ops/s +Iteration 1: 13760.828 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 79757.597 ops/s + 13760.828 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1881,20 +539,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1250020149959 as seed for Random -3246.426 ops/s -Iteration 1: 5056.753 ops/s +# Warmup Iteration 1: Using SEED=1438285877481 as seed for Random +1811.686 ops/s +Iteration 1: 2057.414 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 5056.753 ops/s + 2057.414 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1904,20 +562,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1262857916945 as seed for Random -4530.038 ops/s -Iteration 1: 5084.531 ops/s +# Warmup Iteration 1: Using SEED=1451461153334 as seed for Random +6030.238 ops/s +Iteration 1: 8589.467 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 5084.531 ops/s + 8589.467 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1927,20 +585,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1275708548994 as seed for Random -22009.419 ops/s -Iteration 1: 44409.359 ops/s +# Warmup Iteration 1: Using SEED=1464475539449 as seed for Random +8943.824 ops/s +Iteration 1: 18806.796 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 44409.359 ops/s + 18806.796 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1950,20 +608,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1288607449048 as seed for Random -2734.603 ops/s -Iteration 1: 10462.353 ops/s +# Warmup Iteration 1: Using SEED=1477481004560 as seed for Random +2470.470 ops/s +Iteration 1: 5908.209 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 10462.353 ops/s + 5908.209 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1973,20 +631,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1301413441911 as seed for Random -25632.528 ops/s -Iteration 1: 39776.630 ops/s +# Warmup Iteration 1: Using SEED=1490550434224 as seed for Random +14751.499 ops/s +Iteration 1: 25074.873 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 39776.630 ops/s + 25074.873 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1996,20 +654,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:00:59 +# Run progress: 84.85% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1314283906025 as seed for Random -44882.424 ops/s -Iteration 1: 50157.921 ops/s +# Warmup Iteration 1: Using SEED=1503589194583 as seed for Random +11949.667 ops/s +Iteration 1: 29475.136 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 50157.921 ops/s + 29475.136 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2019,20 +677,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1327136203862 as seed for Random -4891.997 ops/s -Iteration 1: 7936.943 ops/s +# Warmup Iteration 1: Using SEED=1516648743325 as seed for Random +2025.233 ops/s +Iteration 1: 3930.016 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 7936.943 ops/s + 3930.016 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2042,20 +700,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1340007389909 as seed for Random -8141.361 ops/s -Iteration 1: 10248.965 ops/s +# Warmup Iteration 1: Using SEED=1529766516319 as seed for Random +3450.914 ops/s +Iteration 1: 6268.890 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 10248.965 ops/s + 6268.890 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2065,20 +723,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:24 +# Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1352895987543 as seed for Random -2876.574 ops/s -Iteration 1: 4961.084 ops/s +# Warmup Iteration 1: Using SEED=1542816837586 as seed for Random +2762.571 ops/s +Iteration 1: 6894.275 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 4961.084 ops/s + 6894.275 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2088,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:12 +# Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1365835095621 as seed for Random -9020.076 ops/s -Iteration 1: 14530.880 ops/s +# Warmup Iteration 1: Using SEED=1555831783168 as seed for Random +7278.473 ops/s +Iteration 1: 9215.607 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 14530.880 ops/s + 9215.607 ops/s -# Run complete. Total time: 00:06:40 +# Run complete. Total time: 00:07:09 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2108,34 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 79597.056 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 77466.504 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 93209.858 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 88086.027 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 65455.296 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 372.739 ops/s -c.g.f.j.databind.Serialization.genson thrpt 61382.386 ops/s -c.g.f.j.databind.Serialization.gson thrpt 23238.183 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 75312.178 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 78989.185 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 72033.778 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 5787.528 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 23643.451 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 34448.032 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 64850.642 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 37250.991 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 28495.126 ops/s -c.g.f.j.stream.Serialization.genson thrpt 52465.627 ops/s -c.g.f.j.stream.Serialization.gson thrpt 17157.451 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 69233.397 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 79757.597 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 5056.753 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 5084.531 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 44409.359 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 10462.353 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 39776.630 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 50157.921 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 7936.943 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 10248.965 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 4961.084 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 14530.880 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 61895.648 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 55431.030 ops/s +c.g.f.j.databind.Serialization.boon thrpt 20235.166 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 77863.729 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 61176.284 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 39792.109 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 387.617 ops/s +c.g.f.j.databind.Serialization.genson thrpt 37550.079 ops/s +c.g.f.j.databind.Serialization.gson thrpt 22213.333 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 55333.419 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 56095.742 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 52299.831 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 12509.281 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 20438.610 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 65049.786 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 18348.607 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 48441.433 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 24748.221 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 18626.118 ops/s +c.g.f.j.stream.Serialization.genson thrpt 32050.374 ops/s +c.g.f.j.stream.Serialization.gson thrpt 12258.445 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 49345.158 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 13760.828 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 2057.414 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 8589.467 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 18806.796 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 5908.209 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 25074.873 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 29475.136 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 3930.016 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 6268.890 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 6894.275 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 9215.607 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt index 8ccad16..293efd1 100644 --- a/output/users-ser-1-100.txt +++ b/output/users-ser-1-100.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1780912485832 as seed for Random -8025.871 ops/s -Iteration 1: 8900.705 ops/s +# Warmup Iteration 1: Using SEED=2000037854275 as seed for Random +5439.169 ops/s +Iteration 1: 6417.441 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 8900.705 ops/s + 6417.441 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:55 +# Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1793855760253 as seed for Random -6686.241 ops/s -Iteration 1: 7873.611 ops/s +# Warmup Iteration 1: Using SEED=2013139778824 as seed for Random +4351.346 ops/s +Iteration 1: 5133.326 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 7873.611 ops/s + 5133.326 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,326 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:40 +# Run progress: 6.06% complete, ETA 00:06:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1806689932518 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:76) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Warmup Iteration 1: Using SEED=2026201792732 as seed for Random +1552.921 ops/s +Iteration 1: 1927.845 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": + 1927.845 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -385,20 +79,20 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:25 +# Run progress: 9.09% complete, ETA 00:06:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1807422260558 as seed for Random -8807.965 ops/s -Iteration 1: 9810.912 ops/s +# Warmup Iteration 1: Using SEED=2039253836422 as seed for Random +7047.763 ops/s +Iteration 1: 7654.992 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 9810.912 ops/s + 7654.992 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -408,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:45 +# Run progress: 12.12% complete, ETA 00:06:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1820344871443 as seed for Random -8611.022 ops/s -Iteration 1: 9274.994 ops/s +# Warmup Iteration 1: Using SEED=2052348970483 as seed for Random +5949.380 ops/s +Iteration 1: 6177.142 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 9274.994 ops/s + 6177.142 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -431,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:52 +# Run progress: 15.15% complete, ETA 00:06:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1833194498937 as seed for Random -2220.688 ops/s -Iteration 1: 3350.527 ops/s +# Warmup Iteration 1: Using SEED=2065351337836 as seed for Random +2327.576 ops/s +Iteration 1: 2704.948 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 3350.527 ops/s + 2704.948 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -454,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:53 +# Run progress: 18.18% complete, ETA 00:05:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1846047574193 as seed for Random -148.678 ops/s -Iteration 1: 130.282 ops/s +# Warmup Iteration 1: Using SEED=2078336960243 as seed for Random +98.187 ops/s +Iteration 1: 79.153 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 130.282 ops/s + 79.153 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -477,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:51 +# Run progress: 21.21% complete, ETA 00:05:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1859228091420 as seed for Random -4806.854 ops/s -Iteration 1: 5692.445 ops/s +# Warmup Iteration 1: Using SEED=2091888775633 as seed for Random +2360.246 ops/s +Iteration 1: 3773.016 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 5692.445 ops/s + 3773.016 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -500,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:44 +# Run progress: 24.24% complete, ETA 00:05:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1872054876683 as seed for Random -1778.815 ops/s -Iteration 1: 2175.275 ops/s +# Warmup Iteration 1: Using SEED=2104866898946 as seed for Random +1353.535 ops/s +Iteration 1: 2220.229 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 2175.275 ops/s + 2220.229 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -523,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:37 +# Run progress: 27.27% complete, ETA 00:05:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1884961435148 as seed for Random -5699.868 ops/s -Iteration 1: 7212.827 ops/s +# Warmup Iteration 1: Using SEED=2117868621995 as seed for Random +4810.524 ops/s +Iteration 1: 5323.584 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 7212.827 ops/s + 5323.584 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -546,20 +240,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:29 +# Run progress: 30.30% complete, ETA 00:05:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1897886951393 as seed for Random -6439.857 ops/s -Iteration 1: 7303.869 ops/s +# Warmup Iteration 1: Using SEED=2130953723182 as seed for Random +5098.635 ops/s +Iteration 1: 5862.967 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 7303.869 ops/s + 5862.967 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -569,20 +263,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:19 +# Run progress: 33.33% complete, ETA 00:04:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1910697130804 as seed for Random -6529.267 ops/s -Iteration 1: 7774.972 ops/s +# Warmup Iteration 1: Using SEED=2143964460833 as seed for Random +4394.013 ops/s +Iteration 1: 5036.712 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 7774.972 ops/s + 5036.712 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -592,20 +286,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:09 +# Run progress: 36.36% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1923644467066 as seed for Random -477.436 ops/s -Iteration 1: 585.806 ops/s +# Warmup Iteration 1: Using SEED=2157065710859 as seed for Random +932.216 ops/s +Iteration 1: 1276.628 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 585.806 ops/s + 1276.628 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -615,20 +309,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:03:59 +# Run progress: 39.39% complete, ETA 00:04:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1936527063080 as seed for Random -1624.324 ops/s -Iteration 1: 2204.422 ops/s +# Warmup Iteration 1: Using SEED=2170078749328 as seed for Random +1556.945 ops/s +Iteration 1: 1849.084 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 2204.422 ops/s + 1849.084 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -638,1035 +332,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:48 +# Run progress: 42.42% complete, ETA 00:04:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1949364104606 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @3bb50eaa - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more +# Warmup Iteration 1: Using SEED=2183076970337 as seed for Random +6535.741 ops/s +Iteration 1: 6410.236 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": + 6410.236 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1676,20 +355,20 @@ Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:23 +# Run progress: 45.45% complete, ETA 00:03:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1950189520302 as seed for Random -1876.891 ops/s -Iteration 1: 1968.551 ops/s +# Warmup Iteration 1: Using SEED=2196120353192 as seed for Random +2552.229 ops/s +Iteration 1: 2809.956 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 1968.551 ops/s + 2809.956 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1699,20 +378,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:13 +# Run progress: 48.48% complete, ETA 00:03:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1963026197482 as seed for Random -3076.019 ops/s -Iteration 1: 6842.364 ops/s +# Warmup Iteration 1: Using SEED=2209115768660 as seed for Random +3360.215 ops/s +Iteration 1: 4837.863 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 6842.364 ops/s + 4837.863 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1722,20 +401,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:03 +# Run progress: 51.52% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1975848566534 as seed for Random -2729.378 ops/s -Iteration 1: 3786.351 ops/s +# Warmup Iteration 1: Using SEED=2222233015456 as seed for Random +2339.782 ops/s +Iteration 1: 2652.761 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 3786.351 ops/s + 2652.761 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1745,20 +424,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:02:53 +# Run progress: 54.55% complete, ETA 00:03:16 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1988681453169 as seed for Random -2060.993 ops/s -Iteration 1: 3054.637 ops/s +# Warmup Iteration 1: Using SEED=2235204586987 as seed for Random +1182.305 ops/s +Iteration 1: 2053.571 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 3054.637 ops/s + 2053.571 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1768,20 +447,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:42 +# Run progress: 57.58% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2001544899673 as seed for Random -2462.067 ops/s -Iteration 1: 5189.729 ops/s +# Warmup Iteration 1: Using SEED=2248228896653 as seed for Random +2266.489 ops/s +Iteration 1: 3391.166 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 5189.729 ops/s + 3391.166 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1791,20 +470,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:31 +# Run progress: 60.61% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2014411757608 as seed for Random -1261.303 ops/s -Iteration 1: 1680.920 ops/s +# Warmup Iteration 1: Using SEED=2261409582402 as seed for Random +908.372 ops/s +Iteration 1: 1351.197 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 1680.920 ops/s + 1351.197 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1814,20 +493,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:20 +# Run progress: 63.64% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2027269371688 as seed for Random -5679.724 ops/s -Iteration 1: 7256.421 ops/s +# Warmup Iteration 1: Using SEED=2274514065338 as seed for Random +3269.964 ops/s +Iteration 1: 5237.575 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 7256.421 ops/s + 5237.575 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1837,20 +516,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:09 +# Run progress: 66.67% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2040121003719 as seed for Random -5876.968 ops/s -Iteration 1: 7425.025 ops/s +# Warmup Iteration 1: Using SEED=2287593016845 as seed for Random +968.977 ops/s +Iteration 1: 2348.242 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 7425.025 ops/s + 2348.242 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1860,20 +539,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:01:58 +# Run progress: 69.70% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2053015693985 as seed for Random -410.642 ops/s -Iteration 1: 541.674 ops/s +# Warmup Iteration 1: Using SEED=2300646399504 as seed for Random +689.008 ops/s +Iteration 1: 1199.423 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 541.674 ops/s + 1199.423 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1883,20 +562,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:46 +# Run progress: 72.73% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2065912727176 as seed for Random -345.338 ops/s -Iteration 1: 510.424 ops/s +# Warmup Iteration 1: Using SEED=2313669477644 as seed for Random +491.896 ops/s +Iteration 1: 826.860 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 510.424 ops/s + 826.860 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1906,20 +585,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:35 +# Run progress: 75.76% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2078794455065 as seed for Random -1547.318 ops/s -Iteration 1: 2553.755 ops/s +# Warmup Iteration 1: Using SEED=2326784065240 as seed for Random +1011.497 ops/s +Iteration 1: 1748.727 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 2553.755 ops/s + 1748.727 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1929,20 +608,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:23 +# Run progress: 78.79% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2091726706763 as seed for Random -418.293 ops/s -Iteration 1: 885.902 ops/s +# Warmup Iteration 1: Using SEED=2339763455335 as seed for Random +267.849 ops/s +Iteration 1: 573.550 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 885.902 ops/s + 573.550 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1952,20 +631,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:11 +# Run progress: 81.82% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2104575225361 as seed for Random -2861.462 ops/s -Iteration 1: 3725.550 ops/s +# Warmup Iteration 1: Using SEED=2352913322897 as seed for Random +1375.413 ops/s +Iteration 1: 2382.859 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 3725.550 ops/s + 2382.859 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1975,20 +654,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:00 +# Run progress: 84.85% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2117446529570 as seed for Random -2343.229 ops/s -Iteration 1: 2532.008 ops/s +# Warmup Iteration 1: Using SEED=2365999242893 as seed for Random +1876.426 ops/s +Iteration 1: 3083.968 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 2532.008 ops/s + 3083.968 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -1998,20 +677,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:48 +# Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2130338196744 as seed for Random -415.083 ops/s -Iteration 1: 745.206 ops/s +# Warmup Iteration 1: Using SEED=2379105371443 as seed for Random +641.643 ops/s +Iteration 1: 914.190 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 745.206 ops/s + 914.190 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2021,20 +700,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:36 +# Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2143267231308 as seed for Random -750.396 ops/s -Iteration 1: 852.079 ops/s +# Warmup Iteration 1: Using SEED=2392214892643 as seed for Random +294.370 ops/s +Iteration 1: 442.820 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 852.079 ops/s + 442.820 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2044,20 +723,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:24 +# Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2156188364931 as seed for Random -279.238 ops/s -Iteration 1: 433.147 ops/s +# Warmup Iteration 1: Using SEED=2405294967211 as seed for Random +134.597 ops/s +Iteration 1: 141.561 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 433.147 ops/s + 141.561 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4.1, OpenJDK 64-Bit Server VM, 17.0.4.1+1 -# VM invoker: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -2067,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:12 +# Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2169130320797 as seed for Random -1053.357 ops/s -Iteration 1: 1331.551 ops/s +# Warmup Iteration 1: Using SEED=2418701136376 as seed for Random +674.574 ops/s +Iteration 1: 835.763 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 1331.551 ops/s + 835.763 ops/s -# Run complete. Total time: 00:06:41 +# Run complete. Total time: 00:07:11 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -2087,34 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 8900.705 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 7873.611 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 9810.912 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 9274.994 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 3350.527 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 130.282 ops/s -c.g.f.j.databind.Serialization.genson thrpt 5692.445 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2175.275 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 7212.827 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 7303.869 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 7774.972 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 585.806 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 2204.422 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 1968.551 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 6842.364 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 3786.351 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 3054.637 ops/s -c.g.f.j.stream.Serialization.genson thrpt 5189.729 ops/s -c.g.f.j.stream.Serialization.gson thrpt 1680.920 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 7256.421 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 7425.025 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 541.674 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 510.424 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2553.755 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 885.902 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 3725.550 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 2532.008 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 745.206 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 852.079 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 433.147 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 1331.551 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 6417.441 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 5133.326 ops/s +c.g.f.j.databind.Serialization.boon thrpt 1927.845 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 7654.992 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 6177.142 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 2704.948 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 79.153 ops/s +c.g.f.j.databind.Serialization.genson thrpt 3773.016 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2220.229 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 5323.584 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 5862.967 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 5036.712 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 1276.628 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 1849.084 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 6410.236 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 2809.956 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 4837.863 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 2652.761 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2053.571 ops/s +c.g.f.j.stream.Serialization.genson thrpt 3391.166 ops/s +c.g.f.j.stream.Serialization.gson thrpt 1351.197 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 5237.575 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 2348.242 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 1199.423 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 826.860 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 1748.727 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 573.550 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 2382.859 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 3083.968 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 914.190 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 442.820 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 141.561 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 835.763 ops/s From d87aeb157acfcf9c685b3d3c4adcae510a399ed1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=B6zkan=20pakdil?= Date: Fri, 28 Oct 2022 04:09:45 +0100 Subject: [PATCH 21/42] Update run-everything --- run-everything | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/run-everything b/run-everything index 9a4cc6d..498aecd 100755 --- a/run-everything +++ b/run-everything @@ -2,7 +2,7 @@ DATA_TYPES="users clients" NUMBERS="1" -SIZES="1 10 100" +SIZES="1 10 100 1000" COMMANDS="ser deser" OUTPUT_DIR=output From fcc14cabbb1e288654d206395847fb2f16ee5c2f Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Fri, 28 Oct 2022 04:33:52 +0000 Subject: [PATCH 22/42] result adding back to repo [skip ci] another test --- output/clients-deser-1-1.txt | 180 +- output/clients-deser-1-10.txt | 180 +- output/clients-deser-1-100.txt | 180 +- output/clients-deser-1-1000.txt | 369 +++ output/clients-ser-1-1.txt | 180 +- output/clients-ser-1-10.txt | 182 +- output/clients-ser-1-100.txt | 182 +- output/clients-ser-1-1000.txt | 369 +++ output/users-deser-1-1.txt | 394 +-- output/users-deser-1-10.txt | 396 +-- output/users-deser-1-100.txt | 396 +-- output/users-deser-1-1000.txt | 4550 ++++--------------------------- output/users-ser-1-1.txt | 396 +-- output/users-ser-1-10.txt | 398 +-- output/users-ser-1-100.txt | 398 +-- output/users-ser-1-1000.txt | 3532 +++--------------------- 16 files changed, 3274 insertions(+), 9008 deletions(-) create mode 100644 output/clients-deser-1-1000.txt create mode 100644 output/clients-ser-1-1000.txt diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt index a93e423..369745a 100644 --- a/output/clients-deser-1-1.txt +++ b/output/clients-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3060156416383 as seed for Random -84305.365 ops/s -Iteration 1: 200729.921 ops/s +# Warmup Iteration 1: Using SEED=3794516140068 as seed for Random +279702.511 ops/s +Iteration 1: 399793.039 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 200729.921 ops/s + 399793.039 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:03 +# Run progress: 6.67% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3073263787451 as seed for Random -46227.590 ops/s -Iteration 1: 66119.010 ops/s +# Warmup Iteration 1: Using SEED=3807386739337 as seed for Random +174247.805 ops/s +Iteration 1: 305890.025 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 66119.010 ops/s + 305890.025 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:50 +# Run progress: 13.33% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3086389498682 as seed for Random -263550.362 ops/s -Iteration 1: 541599.203 ops/s +# Warmup Iteration 1: Using SEED=3820298010951 as seed for Random +427863.429 ops/s +Iteration 1: 626063.680 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 541599.203 ops/s + 626063.680 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:37 +# Run progress: 20.00% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3099520754461 as seed for Random -228857.419 ops/s -Iteration 1: 290161.558 ops/s +# Warmup Iteration 1: Using SEED=3833190010604 as seed for Random +527433.923 ops/s +Iteration 1: 598312.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 290161.558 ops/s + 598312.166 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:24 +# Run progress: 26.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3112562672763 as seed for Random -49903.166 ops/s -Iteration 1: 124190.404 ops/s +# Warmup Iteration 1: Using SEED=3846091821659 as seed for Random +44401.365 ops/s +Iteration 1: 166915.991 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 124190.404 ops/s + 166915.991 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:10 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3125591655916 as seed for Random -18596.346 ops/s -Iteration 1: 30107.776 ops/s +# Warmup Iteration 1: Using SEED=3858989654160 as seed for Random +29836.487 ops/s +Iteration 1: 57431.087 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 30107.776 ops/s + 57431.087 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:57 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3138730087769 as seed for Random -10939.714 ops/s -Iteration 1: 71105.251 ops/s +# Warmup Iteration 1: Using SEED=3871992156165 as seed for Random +77135.395 ops/s +Iteration 1: 217666.310 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 71105.251 ops/s + 217666.310 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:44 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3151886666598 as seed for Random -53017.790 ops/s -Iteration 1: 145817.227 ops/s +# Warmup Iteration 1: Using SEED=3885016804317 as seed for Random +21994.406 ops/s +Iteration 1: 23908.257 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 145817.227 ops/s + 23908.257 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:31 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3164899191623 as seed for Random -32701.155 ops/s -Iteration 1: 78483.653 ops/s +# Warmup Iteration 1: Using SEED=3897947784425 as seed for Random +180507.821 ops/s +Iteration 1: 317300.169 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 78483.653 ops/s + 317300.169 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:18 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3178028138684 as seed for Random -152973.531 ops/s -Iteration 1: 280965.564 ops/s +# Warmup Iteration 1: Using SEED=3910822664507 as seed for Random +72519.019 ops/s +Iteration 1: 107148.252 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 280965.564 ops/s + 107148.252 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:05 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3191084368157 as seed for Random -166379.101 ops/s -Iteration 1: 279279.650 ops/s +# Warmup Iteration 1: Using SEED=3923728777892 as seed for Random +240319.237 ops/s +Iteration 1: 373944.132 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 279279.650 ops/s + 373944.132 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3204188653302 as seed for Random -24851.186 ops/s -Iteration 1: 48846.292 ops/s +# Warmup Iteration 1: Using SEED=3936625805695 as seed for Random +73807.268 ops/s +Iteration 1: 131312.902 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 48846.292 ops/s + 131312.902 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3217230478878 as seed for Random -242860.699 ops/s -Iteration 1: 309673.688 ops/s +# Warmup Iteration 1: Using SEED=3949504676833 as seed for Random +361303.116 ops/s +Iteration 1: 389023.909 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 309673.688 ops/s + 389023.909 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:26 +# Run progress: 86.67% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3230300922791 as seed for Random -54592.565 ops/s -Iteration 1: 110920.030 ops/s +# Warmup Iteration 1: Using SEED=3962381593692 as seed for Random +76166.528 ops/s +Iteration 1: 144656.758 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 110920.030 ops/s + 144656.758 ops/s # JMH version: 1.33 @@ -332,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:13 +# Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3243391618562 as seed for Random -83253.478 ops/s -Iteration 1: 159609.081 ops/s +# Warmup Iteration 1: Using SEED=3975317336681 as seed for Random +117843.143 ops/s +Iteration 1: 177089.410 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 159609.081 ops/s + 177089.410 ops/s -# Run complete. Total time: 00:03:16 +# Run complete. Total time: 00:03:13 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +352,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 200729.921 ops/s -Deserialization.avajejsonb_jackson thrpt 66119.010 ops/s -Deserialization.dsljson thrpt 541599.203 ops/s -Deserialization.dsljson_reflection thrpt 290161.558 ops/s -Deserialization.fastjson thrpt 124190.404 ops/s -Deserialization.flexjson thrpt 30107.776 ops/s -Deserialization.genson thrpt 71105.251 ops/s -Deserialization.gson thrpt 145817.227 ops/s -Deserialization.jackson thrpt 78483.653 ops/s -Deserialization.jackson_afterburner thrpt 280965.564 ops/s -Deserialization.jackson_blackbird thrpt 279279.650 ops/s -Deserialization.jodd thrpt 48846.292 ops/s -Deserialization.jsoniter thrpt 309673.688 ops/s -Deserialization.logansquare thrpt 110920.030 ops/s -Deserialization.moshi thrpt 159609.081 ops/s +Deserialization.avajejsonb thrpt 399793.039 ops/s +Deserialization.avajejsonb_jackson thrpt 305890.025 ops/s +Deserialization.dsljson thrpt 626063.680 ops/s +Deserialization.dsljson_reflection thrpt 598312.166 ops/s +Deserialization.fastjson thrpt 166915.991 ops/s +Deserialization.flexjson thrpt 57431.087 ops/s +Deserialization.genson thrpt 217666.310 ops/s +Deserialization.gson thrpt 23908.257 ops/s +Deserialization.jackson thrpt 317300.169 ops/s +Deserialization.jackson_afterburner thrpt 107148.252 ops/s +Deserialization.jackson_blackbird thrpt 373944.132 ops/s +Deserialization.jodd thrpt 131312.902 ops/s +Deserialization.jsoniter thrpt 389023.909 ops/s +Deserialization.logansquare thrpt 144656.758 ops/s +Deserialization.moshi thrpt 177089.410 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt index 818f431..2ad842f 100644 --- a/output/clients-deser-1-10.txt +++ b/output/clients-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3454159176573 as seed for Random -6534.910 ops/s -Iteration 1: 11257.515 ops/s +# Warmup Iteration 1: Using SEED=4182902257274 as seed for Random +8582.054 ops/s +Iteration 1: 15636.901 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 11257.515 ops/s + 15636.901 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:03 +# Run progress: 6.67% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3467200006249 as seed for Random -3557.083 ops/s -Iteration 1: 8531.166 ops/s +# Warmup Iteration 1: Using SEED=4195878841551 as seed for Random +6837.477 ops/s +Iteration 1: 12796.070 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 8531.166 ops/s + 12796.070 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:50 +# Run progress: 13.33% complete, ETA 00:02:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3480371789256 as seed for Random -36418.447 ops/s -Iteration 1: 57436.317 ops/s +# Warmup Iteration 1: Using SEED=4208776162282 as seed for Random +41833.170 ops/s +Iteration 1: 67279.472 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 57436.317 ops/s + 67279.472 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:37 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3493473317260 as seed for Random -38608.762 ops/s -Iteration 1: 48132.711 ops/s +# Warmup Iteration 1: Using SEED=4221674732830 as seed for Random +44417.839 ops/s +Iteration 1: 57757.669 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 48132.711 ops/s + 57757.669 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:24 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3506505087350 as seed for Random -3453.066 ops/s -Iteration 1: 9343.319 ops/s +# Warmup Iteration 1: Using SEED=4234569202321 as seed for Random +4683.848 ops/s +Iteration 1: 10197.363 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 9343.319 ops/s + 10197.363 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:10 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3519579684417 as seed for Random -1331.257 ops/s -Iteration 1: 2866.829 ops/s +# Warmup Iteration 1: Using SEED=4247509610347 as seed for Random +1963.199 ops/s +Iteration 1: 3978.185 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 2866.829 ops/s + 3978.185 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:57 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3532738472089 as seed for Random -5099.728 ops/s -Iteration 1: 8639.892 ops/s +# Warmup Iteration 1: Using SEED=4260559008344 as seed for Random +7806.730 ops/s +Iteration 1: 14280.720 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 8639.892 ops/s + 14280.720 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:44 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3545893567779 as seed for Random -4744.938 ops/s -Iteration 1: 10752.366 ops/s +# Warmup Iteration 1: Using SEED=4273494772820 as seed for Random +5255.501 ops/s +Iteration 1: 10564.065 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 10752.366 ops/s + 10564.065 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:31 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3558970169361 as seed for Random -3260.637 ops/s -Iteration 1: 4999.789 ops/s +# Warmup Iteration 1: Using SEED=4286411027070 as seed for Random +4507.303 ops/s +Iteration 1: 9017.630 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 4999.789 ops/s + 9017.630 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:18 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3572033757453 as seed for Random -4845.240 ops/s -Iteration 1: 10286.146 ops/s +# Warmup Iteration 1: Using SEED=4299320132153 as seed for Random +6147.622 ops/s +Iteration 1: 12722.488 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 10286.146 ops/s + 12722.488 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:05 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3585142341034 as seed for Random -3427.658 ops/s -Iteration 1: 7169.767 ops/s +# Warmup Iteration 1: Using SEED=4312196797615 as seed for Random +5910.322 ops/s +Iteration 1: 11220.477 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 7169.767 ops/s + 11220.477 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3598256681810 as seed for Random -3883.012 ops/s -Iteration 1: 7651.469 ops/s +# Warmup Iteration 1: Using SEED=4325068510197 as seed for Random +5132.890 ops/s +Iteration 1: 12300.349 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 7651.469 ops/s + 12300.349 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3611355421381 as seed for Random -2658.441 ops/s -Iteration 1: 5242.765 ops/s +# Warmup Iteration 1: Using SEED=4337946448164 as seed for Random +13446.784 ops/s +Iteration 1: 16005.885 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 5242.765 ops/s + 16005.885 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:26 +# Run progress: 86.67% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3624418886185 as seed for Random -4602.440 ops/s -Iteration 1: 8581.001 ops/s +# Warmup Iteration 1: Using SEED=4350792435837 as seed for Random +5903.132 ops/s +Iteration 1: 11206.913 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 8581.001 ops/s + 11206.913 ops/s # JMH version: 1.33 @@ -332,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:13 +# Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3637448271619 as seed for Random -4315.664 ops/s -Iteration 1: 8035.848 ops/s +# Warmup Iteration 1: Using SEED=4363729795479 as seed for Random +5501.446 ops/s +Iteration 1: 8665.258 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 8035.848 ops/s + 8665.258 ops/s -# Run complete. Total time: 00:03:16 +# Run complete. Total time: 00:03:13 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +352,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 11257.515 ops/s -Deserialization.avajejsonb_jackson thrpt 8531.166 ops/s -Deserialization.dsljson thrpt 57436.317 ops/s -Deserialization.dsljson_reflection thrpt 48132.711 ops/s -Deserialization.fastjson thrpt 9343.319 ops/s -Deserialization.flexjson thrpt 2866.829 ops/s -Deserialization.genson thrpt 8639.892 ops/s -Deserialization.gson thrpt 10752.366 ops/s -Deserialization.jackson thrpt 4999.789 ops/s -Deserialization.jackson_afterburner thrpt 10286.146 ops/s -Deserialization.jackson_blackbird thrpt 7169.767 ops/s -Deserialization.jodd thrpt 7651.469 ops/s -Deserialization.jsoniter thrpt 5242.765 ops/s -Deserialization.logansquare thrpt 8581.001 ops/s -Deserialization.moshi thrpt 8035.848 ops/s +Deserialization.avajejsonb thrpt 15636.901 ops/s +Deserialization.avajejsonb_jackson thrpt 12796.070 ops/s +Deserialization.dsljson thrpt 67279.472 ops/s +Deserialization.dsljson_reflection thrpt 57757.669 ops/s +Deserialization.fastjson thrpt 10197.363 ops/s +Deserialization.flexjson thrpt 3978.185 ops/s +Deserialization.genson thrpt 14280.720 ops/s +Deserialization.gson thrpt 10564.065 ops/s +Deserialization.jackson thrpt 9017.630 ops/s +Deserialization.jackson_afterburner thrpt 12722.488 ops/s +Deserialization.jackson_blackbird thrpt 11220.477 ops/s +Deserialization.jodd thrpt 12300.349 ops/s +Deserialization.jsoniter thrpt 16005.885 ops/s +Deserialization.logansquare thrpt 11206.913 ops/s +Deserialization.moshi thrpt 8665.258 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt index f6c6e58..90b45d1 100644 --- a/output/clients-deser-1-100.txt +++ b/output/clients-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3849110092045 as seed for Random -659.172 ops/s -Iteration 1: 1318.206 ops/s +# Warmup Iteration 1: Using SEED=4572210359121 as seed for Random +802.014 ops/s +Iteration 1: 1498.197 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 1318.206 ops/s + 1498.197 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:05 +# Run progress: 6.67% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3862314979969 as seed for Random -378.151 ops/s -Iteration 1: 721.890 ops/s +# Warmup Iteration 1: Using SEED=4585232060255 as seed for Random +711.367 ops/s +Iteration 1: 1189.898 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 721.890 ops/s + 1189.898 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:51 +# Run progress: 13.33% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3875534771015 as seed for Random -3146.964 ops/s -Iteration 1: 5468.517 ops/s +# Warmup Iteration 1: Using SEED=4598228177938 as seed for Random +5346.451 ops/s +Iteration 1: 7177.188 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 5468.517 ops/s + 7177.188 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3888663664329 as seed for Random -3805.202 ops/s -Iteration 1: 4740.457 ops/s +# Warmup Iteration 1: Using SEED=4611138505851 as seed for Random +5233.317 ops/s +Iteration 1: 6034.425 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 4740.457 ops/s + 6034.425 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:24 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3901763901482 as seed for Random -344.157 ops/s -Iteration 1: 715.855 ops/s +# Warmup Iteration 1: Using SEED=4624043667354 as seed for Random +552.545 ops/s +Iteration 1: 1139.307 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 715.855 ops/s + 1139.307 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:11 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3914882054343 as seed for Random -93.683 ops/s -Iteration 1: 108.275 ops/s +# Warmup Iteration 1: Using SEED=4637031665964 as seed for Random +162.424 ops/s +Iteration 1: 351.392 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 108.275 ops/s + 351.392 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:58 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3928391632019 as seed for Random -428.029 ops/s -Iteration 1: 870.312 ops/s +# Warmup Iteration 1: Using SEED=4650070826752 as seed for Random +674.688 ops/s +Iteration 1: 1274.127 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 870.312 ops/s + 1274.127 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3941636262071 as seed for Random -143.782 ops/s -Iteration 1: 157.056 ops/s +# Warmup Iteration 1: Using SEED=4662940943987 as seed for Random +208.059 ops/s +Iteration 1: 463.695 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 157.056 ops/s + 463.695 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3954866968793 as seed for Random -349.064 ops/s -Iteration 1: 479.655 ops/s +# Warmup Iteration 1: Using SEED=4675978343360 as seed for Random +483.114 ops/s +Iteration 1: 911.285 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 479.655 ops/s + 911.285 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3968044892465 as seed for Random -385.139 ops/s -Iteration 1: 934.178 ops/s +# Warmup Iteration 1: Using SEED=4688920563121 as seed for Random +620.217 ops/s +Iteration 1: 1064.809 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 934.178 ops/s + 1064.809 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3981171804197 as seed for Random -359.319 ops/s -Iteration 1: 881.238 ops/s +# Warmup Iteration 1: Using SEED=4701892859270 as seed for Random +629.407 ops/s +Iteration 1: 1134.170 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 881.238 ops/s + 1134.170 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3994369269268 as seed for Random -374.887 ops/s -Iteration 1: 695.536 ops/s +# Warmup Iteration 1: Using SEED=4714840379759 as seed for Random +499.145 ops/s +Iteration 1: 813.698 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 695.536 ops/s + 813.698 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4007542397720 as seed for Random -1013.989 ops/s -Iteration 1: 1427.112 ops/s +# Warmup Iteration 1: Using SEED=4727795480516 as seed for Random +365.972 ops/s +Iteration 1: 878.970 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 1427.112 ops/s + 878.970 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:26 +# Run progress: 86.67% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4020657039147 as seed for Random -475.845 ops/s -Iteration 1: 816.499 ops/s +# Warmup Iteration 1: Using SEED=4740785483744 as seed for Random +518.232 ops/s +Iteration 1: 1092.417 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 816.499 ops/s + 1092.417 ops/s # JMH version: 1.33 @@ -332,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:13 +# Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4033745066403 as seed for Random -403.136 ops/s -Iteration 1: 467.187 ops/s +# Warmup Iteration 1: Using SEED=4753735683372 as seed for Random +609.093 ops/s +Iteration 1: 1045.754 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 467.187 ops/s + 1045.754 ops/s -# Run complete. Total time: 00:03:17 +# Run complete. Total time: 00:03:14 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +352,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 1318.206 ops/s -Deserialization.avajejsonb_jackson thrpt 721.890 ops/s -Deserialization.dsljson thrpt 5468.517 ops/s -Deserialization.dsljson_reflection thrpt 4740.457 ops/s -Deserialization.fastjson thrpt 715.855 ops/s -Deserialization.flexjson thrpt 108.275 ops/s -Deserialization.genson thrpt 870.312 ops/s -Deserialization.gson thrpt 157.056 ops/s -Deserialization.jackson thrpt 479.655 ops/s -Deserialization.jackson_afterburner thrpt 934.178 ops/s -Deserialization.jackson_blackbird thrpt 881.238 ops/s -Deserialization.jodd thrpt 695.536 ops/s -Deserialization.jsoniter thrpt 1427.112 ops/s -Deserialization.logansquare thrpt 816.499 ops/s -Deserialization.moshi thrpt 467.187 ops/s +Deserialization.avajejsonb thrpt 1498.197 ops/s +Deserialization.avajejsonb_jackson thrpt 1189.898 ops/s +Deserialization.dsljson thrpt 7177.188 ops/s +Deserialization.dsljson_reflection thrpt 6034.425 ops/s +Deserialization.fastjson thrpt 1139.307 ops/s +Deserialization.flexjson thrpt 351.392 ops/s +Deserialization.genson thrpt 1274.127 ops/s +Deserialization.gson thrpt 463.695 ops/s +Deserialization.jackson thrpt 911.285 ops/s +Deserialization.jackson_afterburner thrpt 1064.809 ops/s +Deserialization.jackson_blackbird thrpt 1134.170 ops/s +Deserialization.jodd thrpt 813.698 ops/s +Deserialization.jsoniter thrpt 878.970 ops/s +Deserialization.logansquare thrpt 1092.417 ops/s +Deserialization.moshi thrpt 1045.754 ops/s diff --git a/output/clients-deser-1-1000.txt b/output/clients-deser-1-1000.txt new file mode 100644 index 0000000..e9fed86 --- /dev/null +++ b/output/clients-deser-1-1000.txt @@ -0,0 +1,369 @@ +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:03:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4966748905107 as seed for Random +97.471 ops/s +Iteration 1: 141.313 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": + 141.313 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson + +# Run progress: 6.67% complete, ETA 00:03:06 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4980035247255 as seed for Random +70.612 ops/s +Iteration 1: 123.448 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": + 123.448 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson + +# Run progress: 13.33% complete, ETA 00:02:53 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4993404020020 as seed for Random +487.801 ops/s +Iteration 1: 656.883 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": + 656.883 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection + +# Run progress: 20.00% complete, ETA 00:02:39 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5006504936009 as seed for Random +382.252 ops/s +Iteration 1: 505.277 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": + 505.277 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson + +# Run progress: 26.67% complete, ETA 00:02:25 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5019631483412 as seed for Random +42.065 ops/s +Iteration 1: 88.785 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": + 88.785 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson + +# Run progress: 33.33% complete, ETA 00:02:13 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5033272057548 as seed for Random +17.713 ops/s +Iteration 1: 30.971 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": + 30.971 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson + +# Run progress: 40.00% complete, ETA 00:02:01 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5048021653827 as seed for Random +74.573 ops/s +Iteration 1: 122.646 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": + 122.646 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson + +# Run progress: 46.67% complete, ETA 00:01:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5061402742085 as seed for Random +17.388 ops/s +Iteration 1: 106.003 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": + 106.003 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson + +# Run progress: 53.33% complete, ETA 00:01:35 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5075873406158 as seed for Random +48.235 ops/s +Iteration 1: 72.663 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": + 72.663 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner + +# Run progress: 60.00% complete, ETA 00:01:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5089458519173 as seed for Random +65.339 ops/s +Iteration 1: 106.401 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": + 106.401 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird + +# Run progress: 66.67% complete, ETA 00:01:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5102900202729 as seed for Random +54.245 ops/s +Iteration 1: 104.182 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": + 104.182 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd + +# Run progress: 73.33% complete, ETA 00:00:54 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5116353039168 as seed for Random +46.307 ops/s +Iteration 1: 91.268 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": + 91.268 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter + +# Run progress: 80.00% complete, ETA 00:00:40 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5129859273504 as seed for Random +125.906 ops/s +Iteration 1: 148.229 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": + 148.229 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare + +# Run progress: 86.67% complete, ETA 00:00:27 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5143185605731 as seed for Random +43.454 ops/s +Iteration 1: 110.829 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": + 110.829 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi + +# Run progress: 93.33% complete, ETA 00:00:13 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=5156748765086 as seed for Random +55.120 ops/s +Iteration 1: 102.022 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": + 102.022 ops/s + + +# Run complete. Total time: 00:03:23 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +Deserialization.avajejsonb thrpt 141.313 ops/s +Deserialization.avajejsonb_jackson thrpt 123.448 ops/s +Deserialization.dsljson thrpt 656.883 ops/s +Deserialization.dsljson_reflection thrpt 505.277 ops/s +Deserialization.fastjson thrpt 88.785 ops/s +Deserialization.flexjson thrpt 30.971 ops/s +Deserialization.genson thrpt 122.646 ops/s +Deserialization.gson thrpt 106.003 ops/s +Deserialization.jackson thrpt 72.663 ops/s +Deserialization.jackson_afterburner thrpt 106.401 ops/s +Deserialization.jackson_blackbird thrpt 104.182 ops/s +Deserialization.jodd thrpt 91.268 ops/s +Deserialization.jsoniter thrpt 148.229 ops/s +Deserialization.logansquare thrpt 110.829 ops/s +Deserialization.moshi thrpt 102.022 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt index 572815e..4f408ec 100644 --- a/output/clients-ser-1-1.txt +++ b/output/clients-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2863884277116 as seed for Random -323067.774 ops/s -Iteration 1: 393917.052 ops/s +# Warmup Iteration 1: Using SEED=3600519180711 as seed for Random +340784.764 ops/s +Iteration 1: 421185.988 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 393917.052 ops/s + 421185.988 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:04 +# Run progress: 6.67% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2876980359704 as seed for Random -258397.216 ops/s -Iteration 1: 341520.380 ops/s +# Warmup Iteration 1: Using SEED=3613493236828 as seed for Random +382461.685 ops/s +Iteration 1: 467755.523 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 341520.380 ops/s + 467755.523 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:50 +# Run progress: 13.33% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2890131498624 as seed for Random -640359.376 ops/s -Iteration 1: 756690.367 ops/s +# Warmup Iteration 1: Using SEED=3626495570245 as seed for Random +852865.740 ops/s +Iteration 1: 973187.604 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 756690.367 ops/s + 973187.604 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:37 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2903185942611 as seed for Random -498908.479 ops/s -Iteration 1: 543698.072 ops/s +# Warmup Iteration 1: Using SEED=3639397584924 as seed for Random +759500.685 ops/s +Iteration 1: 810430.636 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 543698.072 ops/s + 810430.636 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:24 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2916241213251 as seed for Random -86223.429 ops/s -Iteration 1: 287449.293 ops/s +# Warmup Iteration 1: Using SEED=3652273428280 as seed for Random +213617.546 ops/s +Iteration 1: 366439.384 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 287449.293 ops/s + 366439.384 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:10 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2929283052349 as seed for Random -2334.744 ops/s -Iteration 1: 1423.766 ops/s +# Warmup Iteration 1: Using SEED=3665141836022 as seed for Random +3001.774 ops/s +Iteration 1: 1636.475 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1423.766 ops/s + 1636.475 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:57 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2942307020562 as seed for Random -134377.843 ops/s -Iteration 1: 202102.945 ops/s +# Warmup Iteration 1: Using SEED=3678051673110 as seed for Random +68046.290 ops/s +Iteration 1: 262135.607 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 202102.945 ops/s + 262135.607 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:44 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2955371594647 as seed for Random -101163.352 ops/s -Iteration 1: 167095.036 ops/s +# Warmup Iteration 1: Using SEED=3690980971609 as seed for Random +139214.188 ops/s +Iteration 1: 196160.171 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 167095.036 ops/s + 196160.171 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:31 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2968382222180 as seed for Random -344012.907 ops/s -Iteration 1: 438884.470 ops/s +# Warmup Iteration 1: Using SEED=3703823935773 as seed for Random +375097.859 ops/s +Iteration 1: 461213.701 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 438884.470 ops/s + 461213.701 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:18 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2981378251309 as seed for Random -303179.205 ops/s -Iteration 1: 431570.984 ops/s +# Warmup Iteration 1: Using SEED=3716720585571 as seed for Random +484246.050 ops/s +Iteration 1: 620648.028 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 431570.984 ops/s + 620648.028 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:05 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2994378184152 as seed for Random -210338.122 ops/s -Iteration 1: 321400.334 ops/s +# Warmup Iteration 1: Using SEED=3729599658133 as seed for Random +322277.127 ops/s +Iteration 1: 394194.848 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 321400.334 ops/s + 394194.848 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3007399106172 as seed for Random -56570.079 ops/s -Iteration 1: 102879.530 ops/s +# Warmup Iteration 1: Using SEED=3742477795168 as seed for Random +81762.380 ops/s +Iteration 1: 139344.680 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 102879.530 ops/s + 139344.680 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3020426039908 as seed for Random -271219.237 ops/s -Iteration 1: 369493.131 ops/s +# Warmup Iteration 1: Using SEED=3755354747332 as seed for Random +432650.495 ops/s +Iteration 1: 520873.711 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 369493.131 ops/s + 520873.711 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:26 +# Run progress: 86.67% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3033469486580 as seed for Random -203023.770 ops/s -Iteration 1: 384051.731 ops/s +# Warmup Iteration 1: Using SEED=3768231357791 as seed for Random +122763.289 ops/s +Iteration 1: 127656.503 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 384051.731 ops/s + 127656.503 ops/s # JMH version: 1.33 @@ -332,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:13 +# Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3046500713463 as seed for Random -137989.940 ops/s -Iteration 1: 194848.783 ops/s +# Warmup Iteration 1: Using SEED=3781101564787 as seed for Random +208750.504 ops/s +Iteration 1: 247820.502 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 194848.783 ops/s + 247820.502 ops/s -# Run complete. Total time: 00:03:15 +# Run complete. Total time: 00:03:13 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +352,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 393917.052 ops/s -Serialization.avajejsonb_jackson thrpt 341520.380 ops/s -Serialization.dsljson thrpt 756690.367 ops/s -Serialization.dsljson_reflection thrpt 543698.072 ops/s -Serialization.fastjson thrpt 287449.293 ops/s -Serialization.flexjson thrpt 1423.766 ops/s -Serialization.genson thrpt 202102.945 ops/s -Serialization.gson thrpt 167095.036 ops/s -Serialization.jackson thrpt 438884.470 ops/s -Serialization.jackson_afterburner thrpt 431570.984 ops/s -Serialization.jackson_blackbird thrpt 321400.334 ops/s -Serialization.jodd thrpt 102879.530 ops/s -Serialization.jsoniter thrpt 369493.131 ops/s -Serialization.logansquare thrpt 384051.731 ops/s -Serialization.moshi thrpt 194848.783 ops/s +Serialization.avajejsonb thrpt 421185.988 ops/s +Serialization.avajejsonb_jackson thrpt 467755.523 ops/s +Serialization.dsljson thrpt 973187.604 ops/s +Serialization.dsljson_reflection thrpt 810430.636 ops/s +Serialization.fastjson thrpt 366439.384 ops/s +Serialization.flexjson thrpt 1636.475 ops/s +Serialization.genson thrpt 262135.607 ops/s +Serialization.gson thrpt 196160.171 ops/s +Serialization.jackson thrpt 461213.701 ops/s +Serialization.jackson_afterburner thrpt 620648.028 ops/s +Serialization.jackson_blackbird thrpt 394194.848 ops/s +Serialization.jodd thrpt 139344.680 ops/s +Serialization.jsoniter thrpt 520873.711 ops/s +Serialization.logansquare thrpt 127656.503 ops/s +Serialization.moshi thrpt 247820.502 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt index cd37fe2..0b0f0d2 100644 --- a/output/clients-ser-1-10.txt +++ b/output/clients-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3257100109806 as seed for Random -27001.312 ops/s -Iteration 1: 34154.808 ops/s +# Warmup Iteration 1: Using SEED=3988744626840 as seed for Random +36075.813 ops/s +Iteration 1: 41651.897 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 34154.808 ops/s + 41651.897 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:04 +# Run progress: 6.67% complete, ETA 00:03:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3270223214795 as seed for Random -23018.702 ops/s -Iteration 1: 28992.942 ops/s +# Warmup Iteration 1: Using SEED=4001654095267 as seed for Random +28911.062 ops/s +Iteration 1: 35293.139 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 28992.942 ops/s + 35293.139 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:50 +# Run progress: 13.33% complete, ETA 00:02:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3283363257509 as seed for Random -74971.327 ops/s -Iteration 1: 86148.575 ops/s +# Warmup Iteration 1: Using SEED=4014578835779 as seed for Random +99906.222 ops/s +Iteration 1: 109795.963 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 86148.575 ops/s + 109795.963 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:37 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3296418849734 as seed for Random -60195.685 ops/s -Iteration 1: 67855.071 ops/s +# Warmup Iteration 1: Using SEED=4027503688973 as seed for Random +85412.964 ops/s +Iteration 1: 93441.056 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 67855.071 ops/s + 93441.056 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:24 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3309505116166 as seed for Random -3015.104 ops/s -Iteration 1: 15748.199 ops/s +# Warmup Iteration 1: Using SEED=4040433461449 as seed for Random +7242.607 ops/s +Iteration 1: 30005.708 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 15748.199 ops/s + 30005.708 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:11 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3322589612835 as seed for Random -517.619 ops/s -Iteration 1: 379.167 ops/s +# Warmup Iteration 1: Using SEED=4053267260714 as seed for Random +758.053 ops/s +Iteration 1: 471.702 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 379.167 ops/s + 471.702 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:58 +# Run progress: 40.00% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3335798462824 as seed for Random -15755.956 ops/s -Iteration 1: 21545.911 ops/s +# Warmup Iteration 1: Using SEED=4066247239678 as seed for Random +17341.651 ops/s +Iteration 1: 27144.436 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 21545.911 ops/s + 27144.436 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:44 +# Run progress: 46.67% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3348858348258 as seed for Random -6364.396 ops/s -Iteration 1: 15018.243 ops/s +# Warmup Iteration 1: Using SEED=4079141771601 as seed for Random +15416.836 ops/s +Iteration 1: 19848.171 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 15018.243 ops/s + 19848.171 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:31 +# Run progress: 53.33% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3361926036777 as seed for Random -18651.956 ops/s -Iteration 1: 26549.131 ops/s +# Warmup Iteration 1: Using SEED=4092070263170 as seed for Random +23435.250 ops/s +Iteration 1: 29401.346 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 26549.131 ops/s + 29401.346 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:18 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3375012116674 as seed for Random -19925.784 ops/s -Iteration 1: 28492.775 ops/s +# Warmup Iteration 1: Using SEED=4105027452248 as seed for Random +26255.934 ops/s +Iteration 1: 33411.506 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 28492.775 ops/s + 33411.506 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:05 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3388078209650 as seed for Random -17389.047 ops/s -Iteration 1: 26563.728 ops/s +# Warmup Iteration 1: Using SEED=4117902163476 as seed for Random +29335.246 ops/s +Iteration 1: 37180.223 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 26563.728 ops/s + 37180.223 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3401178894525 as seed for Random -3311.378 ops/s -Iteration 1: 9269.895 ops/s +# Warmup Iteration 1: Using SEED=4130817934029 as seed for Random +8640.512 ops/s +Iteration 1: 13615.947 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 9269.895 ops/s + 13615.947 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3414248805129 as seed for Random -31411.435 ops/s -Iteration 1: 38761.019 ops/s +# Warmup Iteration 1: Using SEED=4143668118335 as seed for Random +33674.364 ops/s +Iteration 1: 41081.021 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 38761.019 ops/s + 41081.021 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:26 +# Run progress: 86.67% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3427294798377 as seed for Random -21026.492 ops/s -Iteration 1: 31186.134 ops/s +# Warmup Iteration 1: Using SEED=4156554652797 as seed for Random +26568.147 ops/s +Iteration 1: 36761.384 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 31186.134 ops/s + 36761.384 ops/s # JMH version: 1.33 @@ -332,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:13 +# Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3440353152986 as seed for Random -6226.075 ops/s -Iteration 1: 15958.809 ops/s +# Warmup Iteration 1: Using SEED=4169438631175 as seed for Random +14521.479 ops/s +Iteration 1: 21637.982 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 15958.809 ops/s + 21637.982 ops/s -# Run complete. Total time: 00:03:16 +# Run complete. Total time: 00:03:13 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -351,19 +351,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 34154.808 ops/s -Serialization.avajejsonb_jackson thrpt 28992.942 ops/s -Serialization.dsljson thrpt 86148.575 ops/s -Serialization.dsljson_reflection thrpt 67855.071 ops/s -Serialization.fastjson thrpt 15748.199 ops/s -Serialization.flexjson thrpt 379.167 ops/s -Serialization.genson thrpt 21545.911 ops/s -Serialization.gson thrpt 15018.243 ops/s -Serialization.jackson thrpt 26549.131 ops/s -Serialization.jackson_afterburner thrpt 28492.775 ops/s -Serialization.jackson_blackbird thrpt 26563.728 ops/s -Serialization.jodd thrpt 9269.895 ops/s -Serialization.jsoniter thrpt 38761.019 ops/s -Serialization.logansquare thrpt 31186.134 ops/s -Serialization.moshi thrpt 15958.809 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 41651.897 ops/s +Serialization.avajejsonb_jackson thrpt 35293.139 ops/s +Serialization.dsljson thrpt 109795.963 ops/s +Serialization.dsljson_reflection thrpt 93441.056 ops/s +Serialization.fastjson thrpt 30005.708 ops/s +Serialization.flexjson thrpt 471.702 ops/s +Serialization.genson thrpt 27144.436 ops/s +Serialization.gson thrpt 19848.171 ops/s +Serialization.jackson thrpt 29401.346 ops/s +Serialization.jackson_afterburner thrpt 33411.506 ops/s +Serialization.jackson_blackbird thrpt 37180.223 ops/s +Serialization.jodd thrpt 13615.947 ops/s +Serialization.jsoniter thrpt 41081.021 ops/s +Serialization.logansquare thrpt 36761.384 ops/s +Serialization.moshi thrpt 21637.982 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt index b460f44..61e461c 100644 --- a/output/clients-ser-1-100.txt +++ b/output/clients-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3651183281703 as seed for Random -2469.221 ops/s -Iteration 1: 3298.396 ops/s +# Warmup Iteration 1: Using SEED=4377230596115 as seed for Random +3300.556 ops/s +Iteration 1: 4001.146 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 3298.396 ops/s + 4001.146 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:03 +# Run progress: 6.67% complete, ETA 00:03:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3664267053918 as seed for Random -2275.403 ops/s -Iteration 1: 2924.326 ops/s +# Warmup Iteration 1: Using SEED=4390162778664 as seed for Random +2921.576 ops/s +Iteration 1: 3577.195 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 2924.326 ops/s + 3577.195 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:50 +# Run progress: 13.33% complete, ETA 00:02:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3677372763705 as seed for Random -7498.240 ops/s -Iteration 1: 8650.625 ops/s +# Warmup Iteration 1: Using SEED=4403069421037 as seed for Random +11160.576 ops/s +Iteration 1: 12469.674 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 8650.625 ops/s + 12469.674 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:37 +# Run progress: 20.00% complete, ETA 00:02:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3690487898293 as seed for Random -6251.575 ops/s -Iteration 1: 6825.546 ops/s +# Warmup Iteration 1: Using SEED=4416174497638 as seed for Random +9505.648 ops/s +Iteration 1: 9845.909 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 6825.546 ops/s + 9845.909 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:24 +# Run progress: 26.67% complete, ETA 00:02:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3703598015228 as seed for Random -1153.159 ops/s -Iteration 1: 1761.807 ops/s +# Warmup Iteration 1: Using SEED=4429064949544 as seed for Random +1394.255 ops/s +Iteration 1: 1860.121 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 1761.807 ops/s + 1860.121 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:11 +# Run progress: 33.33% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3716720807345 as seed for Random -121.957 ops/s -Iteration 1: 112.013 ops/s +# Warmup Iteration 1: Using SEED=4442049308323 as seed for Random +194.794 ops/s +Iteration 1: 139.472 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 112.013 ops/s + 139.472 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:58 +# Run progress: 40.00% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3730222362765 as seed for Random -1397.748 ops/s -Iteration 1: 2343.197 ops/s +# Warmup Iteration 1: Using SEED=4455266271283 as seed for Random +1705.124 ops/s +Iteration 1: 2862.696 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 2343.197 ops/s + 2862.696 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3743358964027 as seed for Random -973.083 ops/s -Iteration 1: 1622.415 ops/s +# Warmup Iteration 1: Using SEED=4468244211979 as seed for Random +1247.187 ops/s +Iteration 1: 1870.633 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1622.415 ops/s + 1870.633 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3756570570638 as seed for Random -1720.665 ops/s -Iteration 1: 2331.915 ops/s +# Warmup Iteration 1: Using SEED=4481214749664 as seed for Random +2231.664 ops/s +Iteration 1: 2772.802 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 2331.915 ops/s + 2772.802 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3769717136812 as seed for Random -1629.801 ops/s -Iteration 1: 2373.919 ops/s +# Warmup Iteration 1: Using SEED=4494121905970 as seed for Random +2222.997 ops/s +Iteration 1: 2778.911 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 2373.919 ops/s + 2778.911 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:05 +# Run progress: 66.67% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3782784979934 as seed for Random -1630.934 ops/s -Iteration 1: 2193.481 ops/s +# Warmup Iteration 1: Using SEED=4507018087816 as seed for Random +2089.194 ops/s +Iteration 1: 2678.892 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 2193.481 ops/s + 2678.892 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:52 +# Run progress: 73.33% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3795989127745 as seed for Random -503.592 ops/s -Iteration 1: 1111.991 ops/s +# Warmup Iteration 1: Using SEED=4519948840325 as seed for Random +893.107 ops/s +Iteration 1: 1376.657 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 1111.991 ops/s + 1376.657 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3809127434885 as seed for Random -3566.379 ops/s -Iteration 1: 3625.373 ops/s +# Warmup Iteration 1: Using SEED=4532859437343 as seed for Random +2882.904 ops/s +Iteration 1: 3963.645 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 3625.373 ops/s + 3963.645 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:26 +# Run progress: 86.67% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3822226622022 as seed for Random -2018.776 ops/s -Iteration 1: 2957.244 ops/s +# Warmup Iteration 1: Using SEED=4545750201922 as seed for Random +2909.431 ops/s +Iteration 1: 3540.712 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 2957.244 ops/s + 3540.712 ops/s # JMH version: 1.33 @@ -332,18 +332,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:13 +# Run progress: 93.33% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3835338142372 as seed for Random -1320.742 ops/s -Iteration 1: 1715.304 ops/s +# Warmup Iteration 1: Using SEED=4558699100290 as seed for Random +1807.356 ops/s +Iteration 1: 2247.081 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 1715.304 ops/s + 2247.081 ops/s -# Run complete. Total time: 00:03:17 +# Run complete. Total time: 00:03:14 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -351,19 +351,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 3298.396 ops/s -Serialization.avajejsonb_jackson thrpt 2924.326 ops/s -Serialization.dsljson thrpt 8650.625 ops/s -Serialization.dsljson_reflection thrpt 6825.546 ops/s -Serialization.fastjson thrpt 1761.807 ops/s -Serialization.flexjson thrpt 112.013 ops/s -Serialization.genson thrpt 2343.197 ops/s -Serialization.gson thrpt 1622.415 ops/s -Serialization.jackson thrpt 2331.915 ops/s -Serialization.jackson_afterburner thrpt 2373.919 ops/s -Serialization.jackson_blackbird thrpt 2193.481 ops/s -Serialization.jodd thrpt 1111.991 ops/s -Serialization.jsoniter thrpt 3625.373 ops/s -Serialization.logansquare thrpt 2957.244 ops/s -Serialization.moshi thrpt 1715.304 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 4001.146 ops/s +Serialization.avajejsonb_jackson thrpt 3577.195 ops/s +Serialization.dsljson thrpt 12469.674 ops/s +Serialization.dsljson_reflection thrpt 9845.909 ops/s +Serialization.fastjson thrpt 1860.121 ops/s +Serialization.flexjson thrpt 139.472 ops/s +Serialization.genson thrpt 2862.696 ops/s +Serialization.gson thrpt 1870.633 ops/s +Serialization.jackson thrpt 2772.802 ops/s +Serialization.jackson_afterburner thrpt 2778.911 ops/s +Serialization.jackson_blackbird thrpt 2678.892 ops/s +Serialization.jodd thrpt 1376.657 ops/s +Serialization.jsoniter thrpt 3963.645 ops/s +Serialization.logansquare thrpt 3540.712 ops/s +Serialization.moshi thrpt 2247.081 ops/s diff --git a/output/clients-ser-1-1000.txt b/output/clients-ser-1-1000.txt new file mode 100644 index 0000000..4a01c49 --- /dev/null +++ b/output/clients-ser-1-1000.txt @@ -0,0 +1,369 @@ +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb + +# Run progress: 0.00% complete, ETA 00:03:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4767312774491 as seed for Random +336.108 ops/s +Iteration 1: 372.696 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": + 372.696 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson + +# Run progress: 6.67% complete, ETA 00:03:06 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4780550380435 as seed for Random +254.403 ops/s +Iteration 1: 353.880 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": + 353.880 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson + +# Run progress: 13.33% complete, ETA 00:02:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4793681521905 as seed for Random +1048.431 ops/s +Iteration 1: 1163.171 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": + 1163.171 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection + +# Run progress: 20.00% complete, ETA 00:02:37 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4806730469864 as seed for Random +845.421 ops/s +Iteration 1: 922.328 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": + 922.328 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson + +# Run progress: 26.67% complete, ETA 00:02:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4819754254153 as seed for Random +113.493 ops/s +Iteration 1: 164.584 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": + 164.584 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson + +# Run progress: 33.33% complete, ETA 00:02:11 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4833107739401 as seed for Random +20.257 ops/s +Iteration 1: 41.978 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": + 41.978 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson + +# Run progress: 40.00% complete, ETA 00:02:00 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4847441839878 as seed for Random +210.645 ops/s +Iteration 1: 258.088 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": + 258.088 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson + +# Run progress: 46.67% complete, ETA 00:01:46 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4860603339908 as seed for Random +142.982 ops/s +Iteration 1: 169.792 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": + 169.792 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson + +# Run progress: 53.33% complete, ETA 00:01:33 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4873858952129 as seed for Random +226.555 ops/s +Iteration 1: 273.343 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": + 273.343 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner + +# Run progress: 60.00% complete, ETA 00:01:19 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4886968881265 as seed for Random +215.146 ops/s +Iteration 1: 268.938 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": + 268.938 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird + +# Run progress: 66.67% complete, ETA 00:01:06 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4900141433737 as seed for Random +217.902 ops/s +Iteration 1: 271.491 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": + 271.491 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd + +# Run progress: 73.33% complete, ETA 00:00:53 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4913248480900 as seed for Random +92.588 ops/s +Iteration 1: 128.398 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": + 128.398 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter + +# Run progress: 80.00% complete, ETA 00:00:39 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4926605658721 as seed for Random +378.299 ops/s +Iteration 1: 388.699 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": + 388.699 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare + +# Run progress: 86.67% complete, ETA 00:00:26 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4939681053921 as seed for Random +268.845 ops/s +Iteration 1: 356.802 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": + 356.802 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi + +# Run progress: 93.33% complete, ETA 00:00:13 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=4952926060338 as seed for Random +181.000 ops/s +Iteration 1: 204.655 ops/s + + +Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": + 204.655 ops/s + + +# Run complete. Total time: 00:03:18 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 372.696 ops/s +Serialization.avajejsonb_jackson thrpt 353.880 ops/s +Serialization.dsljson thrpt 1163.171 ops/s +Serialization.dsljson_reflection thrpt 922.328 ops/s +Serialization.fastjson thrpt 164.584 ops/s +Serialization.flexjson thrpt 41.978 ops/s +Serialization.genson thrpt 258.088 ops/s +Serialization.gson thrpt 169.792 ops/s +Serialization.jackson thrpt 273.343 ops/s +Serialization.jackson_afterburner thrpt 268.938 ops/s +Serialization.jackson_blackbird thrpt 271.491 ops/s +Serialization.jodd thrpt 128.398 ops/s +Serialization.jsoniter thrpt 388.699 ops/s +Serialization.logansquare thrpt 356.802 ops/s +Serialization.moshi thrpt 204.655 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt index 7c616fb..866e850 100644 --- a/output/users-deser-1-1.txt +++ b/output/users-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=709293958983 as seed for Random -373373.763 ops/s -Iteration 1: 503480.007 ops/s +# Warmup Iteration 1: Using SEED=600997978578 as seed for Random +473550.280 ops/s +Iteration 1: 594909.027 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 503480.007 ops/s + 594909.027 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:57 +# Run progress: 3.03% complete, ETA 00:06:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=722292890740 as seed for Random -239222.444 ops/s -Iteration 1: 389555.879 ops/s +# Warmup Iteration 1: Using SEED=614008667384 as seed for Random +300897.049 ops/s +Iteration 1: 388606.652 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 389555.879 ops/s + 388606.652 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:43 +# Run progress: 6.06% complete, ETA 00:06:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=735323395881 as seed for Random -118326.332 ops/s -Iteration 1: 152912.969 ops/s +# Warmup Iteration 1: Using SEED=626858170367 as seed for Random +159747.516 ops/s +Iteration 1: 180658.481 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": - 152912.969 ops/s + 180658.481 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:30 +# Run progress: 9.09% complete, ETA 00:06:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=748286294538 as seed for Random -333474.632 ops/s -Iteration 1: 500718.278 ops/s +# Warmup Iteration 1: Using SEED=639716730976 as seed for Random +538799.181 ops/s +Iteration 1: 689593.010 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 500718.278 ops/s + 689593.010 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:17 +# Run progress: 12.12% complete, ETA 00:06:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=761268263583 as seed for Random -290160.605 ops/s -Iteration 1: 474258.908 ops/s +# Warmup Iteration 1: Using SEED=652631785215 as seed for Random +476466.537 ops/s +Iteration 1: 550991.463 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 474258.908 ops/s + 550991.463 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:04 +# Run progress: 15.15% complete, ETA 00:06:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=774259747874 as seed for Random -107564.167 ops/s -Iteration 1: 189378.031 ops/s +# Warmup Iteration 1: Using SEED=665452735632 as seed for Random +147098.492 ops/s +Iteration 1: 238422.683 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 189378.031 ops/s + 238422.683 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:51 +# Run progress: 18.18% complete, ETA 00:05:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=787286544351 as seed for Random -16953.764 ops/s -Iteration 1: 30399.908 ops/s +# Warmup Iteration 1: Using SEED=678323185009 as seed for Random +26157.052 ops/s +Iteration 1: 65351.686 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 30399.908 ops/s + 65351.686 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:38 +# Run progress: 21.21% complete, ETA 00:05:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=800327541806 as seed for Random -121188.272 ops/s -Iteration 1: 193095.437 ops/s +# Warmup Iteration 1: Using SEED=691176466329 as seed for Random +228127.504 ops/s +Iteration 1: 272671.648 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 193095.437 ops/s + 272671.648 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:05:25 +# Run progress: 24.24% complete, ETA 00:05:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=813265476993 as seed for Random -113884.081 ops/s -Iteration 1: 182381.991 ops/s +# Warmup Iteration 1: Using SEED=704033337812 as seed for Random +227932.917 ops/s +Iteration 1: 258219.531 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 182381.991 ops/s + 258219.531 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:05:12 +# Run progress: 27.27% complete, ETA 00:05:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=826284258848 as seed for Random -215682.163 ops/s -Iteration 1: 321651.279 ops/s +# Warmup Iteration 1: Using SEED=716920877549 as seed for Random +338138.802 ops/s +Iteration 1: 462401.768 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 321651.279 ops/s + 462401.768 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:59 +# Run progress: 30.30% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=839297315254 as seed for Random -289644.173 ops/s -Iteration 1: 380743.343 ops/s +# Warmup Iteration 1: Using SEED=729765991526 as seed for Random +392446.894 ops/s +Iteration 1: 476484.820 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 380743.343 ops/s + 476484.820 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:46 +# Run progress: 33.33% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=852254601394 as seed for Random -246212.259 ops/s -Iteration 1: 330178.366 ops/s +# Warmup Iteration 1: Using SEED=742686215754 as seed for Random +372298.540 ops/s +Iteration 1: 446713.533 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 330178.366 ops/s + 446713.533 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:33 +# Run progress: 36.36% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=865250960925 as seed for Random -185793.186 ops/s -Iteration 1: 245459.548 ops/s +# Warmup Iteration 1: Using SEED=755541185984 as seed for Random +236130.855 ops/s +Iteration 1: 293002.665 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 245459.548 ops/s + 293002.665 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:19 +# Run progress: 39.39% complete, ETA 00:04:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=878238818695 as seed for Random -16438.312 ops/s -Iteration 1: 51291.601 ops/s +# Warmup Iteration 1: Using SEED=768346834103 as seed for Random +50178.202 ops/s +Iteration 1: 78687.842 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 51291.601 ops/s + 78687.842 ops/s # JMH version: 1.33 @@ -332,15 +332,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:06 +# Run progress: 42.42% complete, ETA 00:04:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=891206638888 as seed for Random -211289.860 ops/s -Iteration 1: 405706.511 ops/s +# Warmup Iteration 1: Using SEED=781235693882 as seed for Random +505688.129 ops/s +Iteration 1: 498650.158 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 405706.511 ops/s + 498650.158 ops/s # JMH version: 1.33 @@ -355,15 +355,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:53 +# Run progress: 45.45% complete, ETA 00:03:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=904197612171 as seed for Random -179116.915 ops/s -Iteration 1: 230983.211 ops/s +# Warmup Iteration 1: Using SEED=794086562505 as seed for Random +224845.327 ops/s +Iteration 1: 260890.669 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 230983.211 ops/s + 260890.669 ops/s # JMH version: 1.33 @@ -378,15 +378,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:40 +# Run progress: 48.48% complete, ETA 00:03:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=917150567957 as seed for Random -158948.567 ops/s -Iteration 1: 190667.061 ops/s +# Warmup Iteration 1: Using SEED=806931670113 as seed for Random +221472.163 ops/s +Iteration 1: 258289.624 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 190667.061 ops/s + 258289.624 ops/s # JMH version: 1.33 @@ -401,15 +401,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:27 +# Run progress: 51.52% complete, ETA 00:03:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=930188665131 as seed for Random -89614.689 ops/s -Iteration 1: 126391.523 ops/s +# Warmup Iteration 1: Using SEED=819766990581 as seed for Random +178645.649 ops/s +Iteration 1: 220408.427 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 126391.523 ops/s + 220408.427 ops/s # JMH version: 1.33 @@ -424,15 +424,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:14 +# Run progress: 54.55% complete, ETA 00:03:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=943150249763 as seed for Random -25209.527 ops/s -Iteration 1: 47219.946 ops/s +# Warmup Iteration 1: Using SEED=832590218361 as seed for Random +38963.219 ops/s +Iteration 1: 64216.627 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 47219.946 ops/s + 64216.627 ops/s # JMH version: 1.33 @@ -447,15 +447,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:01 +# Run progress: 57.58% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=956163827939 as seed for Random -133833.730 ops/s -Iteration 1: 215553.706 ops/s +# Warmup Iteration 1: Using SEED=845409557282 as seed for Random +244976.594 ops/s +Iteration 1: 312556.303 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 215553.706 ops/s + 312556.303 ops/s # JMH version: 1.33 @@ -470,15 +470,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:48 +# Run progress: 60.61% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=969284765374 as seed for Random -104584.893 ops/s -Iteration 1: 192307.437 ops/s +# Warmup Iteration 1: Using SEED=858392706139 as seed for Random +213408.951 ops/s +Iteration 1: 251448.135 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 192307.437 ops/s + 251448.135 ops/s # JMH version: 1.33 @@ -493,15 +493,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:36 +# Run progress: 63.64% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=982289941023 as seed for Random -216218.755 ops/s -Iteration 1: 366577.893 ops/s +# Warmup Iteration 1: Using SEED=871256898926 as seed for Random +261572.769 ops/s +Iteration 1: 322521.258 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 366577.893 ops/s + 322521.258 ops/s # JMH version: 1.33 @@ -516,15 +516,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:23 +# Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=995238389732 as seed for Random -34877.773 ops/s -Iteration 1: 45044.943 ops/s +# Warmup Iteration 1: Using SEED=884099469067 as seed for Random +53622.977 ops/s +Iteration 1: 61576.717 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 45044.943 ops/s + 61576.717 ops/s # JMH version: 1.33 @@ -539,15 +539,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:09 +# Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1008155068694 as seed for Random -34842.279 ops/s -Iteration 1: 68451.363 ops/s +# Warmup Iteration 1: Using SEED=896892521740 as seed for Random +68636.525 ops/s +Iteration 1: 105983.632 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 68451.363 ops/s + 105983.632 ops/s # JMH version: 1.33 @@ -562,15 +562,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:56 +# Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1021151560204 as seed for Random -48821.107 ops/s -Iteration 1: 66897.241 ops/s +# Warmup Iteration 1: Using SEED=909803724983 as seed for Random +67776.120 ops/s +Iteration 1: 87073.388 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 66897.241 ops/s + 87073.388 ops/s # JMH version: 1.33 @@ -585,15 +585,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:43 +# Run progress: 75.76% complete, ETA 00:01:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1034237918771 as seed for Random -11193.867 ops/s -Iteration 1: 12443.013 ops/s +# Warmup Iteration 1: Using SEED=922698211139 as seed for Random +52976.908 ops/s +Iteration 1: 117612.468 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 12443.013 ops/s + 117612.468 ops/s # JMH version: 1.33 @@ -608,15 +608,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:31 +# Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1047299374546 as seed for Random -98670.592 ops/s -Iteration 1: 131761.713 ops/s +# Warmup Iteration 1: Using SEED=935522892001 as seed for Random +124611.104 ops/s +Iteration 1: 170828.188 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 131761.713 ops/s + 170828.188 ops/s # JMH version: 1.33 @@ -631,15 +631,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1060286635076 as seed for Random -75793.727 ops/s -Iteration 1: 181811.167 ops/s +# Warmup Iteration 1: Using SEED=948327002746 as seed for Random +113874.061 ops/s +Iteration 1: 180175.762 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 181811.167 ops/s + 180175.762 ops/s # JMH version: 1.33 @@ -654,15 +654,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1073311529676 as seed for Random -67527.177 ops/s -Iteration 1: 73024.695 ops/s +# Warmup Iteration 1: Using SEED=961134808256 as seed for Random +96293.609 ops/s +Iteration 1: 107278.686 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 73024.695 ops/s + 107278.686 ops/s # JMH version: 1.33 @@ -677,15 +677,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1086278672529 as seed for Random -78553.777 ops/s -Iteration 1: 124396.539 ops/s +# Warmup Iteration 1: Using SEED=974056281489 as seed for Random +39255.706 ops/s +Iteration 1: 99558.866 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 124396.539 ops/s + 99558.866 ops/s # JMH version: 1.33 @@ -700,15 +700,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:39 +# Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1099260092222 as seed for Random -52575.491 ops/s -Iteration 1: 73170.623 ops/s +# Warmup Iteration 1: Using SEED=986906745702 as seed for Random +67356.959 ops/s +Iteration 1: 85214.526 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 73170.623 ops/s + 85214.526 ops/s # JMH version: 1.33 @@ -725,13 +725,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1112244987490 as seed for Random -135281.713 ops/s -Iteration 1: 270309.204 ops/s +# Warmup Iteration 1: Using SEED=999762383362 as seed for Random +125652.763 ops/s +Iteration 1: 323649.420 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 270309.204 ops/s + 323649.420 ops/s # JMH version: 1.33 @@ -746,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:13 +# Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1125310132779 as seed for Random -54145.160 ops/s -Iteration 1: 188717.719 ops/s +# Warmup Iteration 1: Using SEED=1012611805022 as seed for Random +116955.892 ops/s +Iteration 1: 324468.813 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 188717.719 ops/s + 324468.813 ops/s -# Run complete. Total time: 00:07:09 +# Run complete. Total time: 00:07:04 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 503480.007 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 389555.879 ops/s -c.g.f.j.databind.Deserialization.boon thrpt 152912.969 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 500718.278 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 474258.908 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 189378.031 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 30399.908 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 193095.437 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 182381.991 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 321651.279 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 380743.343 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 330178.366 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 245459.548 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 51291.601 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 405706.511 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 230983.211 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 190667.061 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 126391.523 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 47219.946 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 215553.706 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 192307.437 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 366577.893 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 45044.943 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 68451.363 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 66897.241 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 12443.013 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 131761.713 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 181811.167 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 73024.695 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 124396.539 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 73170.623 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 270309.204 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 188717.719 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 594909.027 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 388606.652 ops/s +c.g.f.j.databind.Deserialization.boon thrpt 180658.481 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 689593.010 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 550991.463 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 238422.683 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 65351.686 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 272671.648 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 258219.531 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 462401.768 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 476484.820 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 446713.533 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 293002.665 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 78687.842 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 498650.158 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 260890.669 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 258289.624 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 220408.427 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 64216.627 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 312556.303 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 251448.135 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 322521.258 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 61576.717 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 105983.632 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 87073.388 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 117612.468 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 170828.188 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 180175.762 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 107278.686 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 99558.866 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 85214.526 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 323649.420 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 324468.813 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt index 06dbac2..bc7ec80 100644 --- a/output/users-deser-1-10.txt +++ b/output/users-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1569645277210 as seed for Random -39789.836 ops/s -Iteration 1: 49358.755 ops/s +# Warmup Iteration 1: Using SEED=1450725212180 as seed for Random +58394.137 ops/s +Iteration 1: 67878.154 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 49358.755 ops/s + 67878.154 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:57 +# Run progress: 3.03% complete, ETA 00:06:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1582628518196 as seed for Random -34548.809 ops/s -Iteration 1: 43719.755 ops/s +# Warmup Iteration 1: Using SEED=1463565273106 as seed for Random +47357.898 ops/s +Iteration 1: 57642.203 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 43719.755 ops/s + 57642.203 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:44 +# Run progress: 6.06% complete, ETA 00:06:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1595667734265 as seed for Random -19139.276 ops/s -Iteration 1: 24603.709 ops/s +# Warmup Iteration 1: Using SEED=1476447007276 as seed for Random +26713.252 ops/s +Iteration 1: 31693.147 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": - 24603.709 ops/s + 31693.147 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:31 +# Run progress: 9.09% complete, ETA 00:06:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1608708380515 as seed for Random -52704.546 ops/s -Iteration 1: 60453.435 ops/s +# Warmup Iteration 1: Using SEED=1489301509435 as seed for Random +62995.896 ops/s +Iteration 1: 79731.440 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 60453.435 ops/s + 79731.440 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:17 +# Run progress: 12.12% complete, ETA 00:06:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1621735064049 as seed for Random -49079.518 ops/s -Iteration 1: 54471.428 ops/s +# Warmup Iteration 1: Using SEED=1502201854610 as seed for Random +69969.516 ops/s +Iteration 1: 72387.240 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 54471.428 ops/s + 72387.240 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:04 +# Run progress: 15.15% complete, ETA 00:06:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1634754954157 as seed for Random -18535.209 ops/s -Iteration 1: 26909.434 ops/s +# Warmup Iteration 1: Using SEED=1515044393589 as seed for Random +29745.157 ops/s +Iteration 1: 37418.342 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 26909.434 ops/s + 37418.342 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:51 +# Run progress: 18.18% complete, ETA 00:05:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1647789515566 as seed for Random -1395.392 ops/s -Iteration 1: 5698.313 ops/s +# Warmup Iteration 1: Using SEED=1527868492883 as seed for Random +2049.543 ops/s +Iteration 1: 6213.295 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 5698.313 ops/s + 6213.295 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:39 +# Run progress: 21.21% complete, ETA 00:05:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1660891882974 as seed for Random -17195.808 ops/s -Iteration 1: 27715.434 ops/s +# Warmup Iteration 1: Using SEED=1540728156452 as seed for Random +30647.060 ops/s +Iteration 1: 38250.916 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 27715.434 ops/s + 38250.916 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:05:25 +# Run progress: 24.24% complete, ETA 00:05:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1673893562136 as seed for Random -20262.091 ops/s -Iteration 1: 27339.429 ops/s +# Warmup Iteration 1: Using SEED=1553647281275 as seed for Random +24684.330 ops/s +Iteration 1: 37020.393 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 27339.429 ops/s + 37020.393 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:05:12 +# Run progress: 27.27% complete, ETA 00:05:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1686886903464 as seed for Random -30336.799 ops/s -Iteration 1: 42054.877 ops/s +# Warmup Iteration 1: Using SEED=1566514657324 as seed for Random +43689.344 ops/s +Iteration 1: 53412.235 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 42054.877 ops/s + 53412.235 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:59 +# Run progress: 30.30% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1699922140624 as seed for Random -36367.590 ops/s -Iteration 1: 46200.960 ops/s +# Warmup Iteration 1: Using SEED=1579480897512 as seed for Random +48477.969 ops/s +Iteration 1: 58682.285 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 46200.960 ops/s + 58682.285 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:46 +# Run progress: 33.33% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1712892498691 as seed for Random -37803.655 ops/s -Iteration 1: 42457.306 ops/s +# Warmup Iteration 1: Using SEED=1592328361419 as seed for Random +47114.689 ops/s +Iteration 1: 56451.650 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 42457.306 ops/s + 56451.650 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:33 +# Run progress: 36.36% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1725953922400 as seed for Random -21535.392 ops/s -Iteration 1: 26927.283 ops/s +# Warmup Iteration 1: Using SEED=1605139372753 as seed for Random +27578.576 ops/s +Iteration 1: 34064.771 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 26927.283 ops/s + 34064.771 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:20 +# Run progress: 39.39% complete, ETA 00:04:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1738983894927 as seed for Random -5037.456 ops/s -Iteration 1: 7226.684 ops/s +# Warmup Iteration 1: Using SEED=1617956456613 as seed for Random +6577.360 ops/s +Iteration 1: 8306.150 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 7226.684 ops/s + 8306.150 ops/s # JMH version: 1.33 @@ -332,15 +332,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:07 +# Run progress: 42.42% complete, ETA 00:04:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1751963795269 as seed for Random -29689.635 ops/s -Iteration 1: 48098.749 ops/s +# Warmup Iteration 1: Using SEED=1630826937705 as seed for Random +41846.655 ops/s +Iteration 1: 61961.761 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 48098.749 ops/s + 61961.761 ops/s # JMH version: 1.33 @@ -355,15 +355,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:54 +# Run progress: 45.45% complete, ETA 00:03:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1764977329641 as seed for Random -18802.811 ops/s -Iteration 1: 24971.797 ops/s +# Warmup Iteration 1: Using SEED=1643623657542 as seed for Random +23688.244 ops/s +Iteration 1: 27272.784 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 24971.797 ops/s + 27272.784 ops/s # JMH version: 1.33 @@ -378,15 +378,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:41 +# Run progress: 48.48% complete, ETA 00:03:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1777985359429 as seed for Random -26673.693 ops/s -Iteration 1: 36541.557 ops/s +# Warmup Iteration 1: Using SEED=1656484448269 as seed for Random +46034.663 ops/s +Iteration 1: 52598.951 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 36541.557 ops/s + 52598.951 ops/s # JMH version: 1.33 @@ -401,15 +401,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:28 +# Run progress: 51.52% complete, ETA 00:03:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1790946950023 as seed for Random -16652.890 ops/s -Iteration 1: 17595.924 ops/s +# Warmup Iteration 1: Using SEED=1669389827781 as seed for Random +21036.481 ops/s +Iteration 1: 22690.391 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 17595.924 ops/s + 22690.391 ops/s # JMH version: 1.33 @@ -424,15 +424,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:15 +# Run progress: 54.55% complete, ETA 00:03:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1803990226578 as seed for Random -2767.589 ops/s -Iteration 1: 5686.166 ops/s +# Warmup Iteration 1: Using SEED=1682226970540 as seed for Random +5186.559 ops/s +Iteration 1: 7373.244 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 5686.166 ops/s + 7373.244 ops/s # JMH version: 1.33 @@ -447,15 +447,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:02 +# Run progress: 57.58% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1816983970582 as seed for Random -19102.572 ops/s -Iteration 1: 31736.189 ops/s +# Warmup Iteration 1: Using SEED=1695045138674 as seed for Random +29808.165 ops/s +Iteration 1: 43420.696 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 31736.189 ops/s + 43420.696 ops/s # JMH version: 1.33 @@ -470,15 +470,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:49 +# Run progress: 60.61% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1830079004823 as seed for Random -12020.266 ops/s -Iteration 1: 27029.392 ops/s +# Warmup Iteration 1: Using SEED=1707929929700 as seed for Random +24992.314 ops/s +Iteration 1: 37416.057 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 27029.392 ops/s + 37416.057 ops/s # JMH version: 1.33 @@ -493,15 +493,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:36 +# Run progress: 63.64% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1843113552557 as seed for Random -34707.398 ops/s -Iteration 1: 45418.605 ops/s +# Warmup Iteration 1: Using SEED=1720744041986 as seed for Random +44436.220 ops/s +Iteration 1: 57942.549 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 45418.605 ops/s + 57942.549 ops/s # JMH version: 1.33 @@ -516,15 +516,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:23 +# Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1856138845222 as seed for Random -7758.198 ops/s -Iteration 1: 17012.309 ops/s +# Warmup Iteration 1: Using SEED=1733597465418 as seed for Random +7454.306 ops/s +Iteration 1: 22188.533 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 17012.309 ops/s + 22188.533 ops/s # JMH version: 1.33 @@ -539,15 +539,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:10 +# Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1869107588656 as seed for Random -952.772 ops/s -Iteration 1: 1019.882 ops/s +# Warmup Iteration 1: Using SEED=1746400026620 as seed for Random +1647.741 ops/s +Iteration 1: 1872.272 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 1019.882 ops/s + 1872.272 ops/s # JMH version: 1.33 @@ -562,15 +562,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:57 +# Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1882153333800 as seed for Random -5669.124 ops/s -Iteration 1: 10429.325 ops/s +# Warmup Iteration 1: Using SEED=1759274514104 as seed for Random +8671.090 ops/s +Iteration 1: 11506.190 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 10429.325 ops/s + 11506.190 ops/s # JMH version: 1.33 @@ -585,15 +585,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:44 +# Run progress: 75.76% complete, ETA 00:01:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1895157678229 as seed for Random -1507.821 ops/s -Iteration 1: 1507.646 ops/s +# Warmup Iteration 1: Using SEED=1772114451728 as seed for Random +10972.342 ops/s +Iteration 1: 25238.646 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 1507.646 ops/s + 25238.646 ops/s # JMH version: 1.33 @@ -608,15 +608,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:31 +# Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1908200797407 as seed for Random -10227.988 ops/s -Iteration 1: 13897.753 ops/s +# Warmup Iteration 1: Using SEED=1784960767146 as seed for Random +13054.346 ops/s +Iteration 1: 17629.841 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 13897.753 ops/s + 17629.841 ops/s # JMH version: 1.33 @@ -631,15 +631,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1921224093481 as seed for Random -6533.680 ops/s -Iteration 1: 13670.275 ops/s +# Warmup Iteration 1: Using SEED=1797806943559 as seed for Random +15828.718 ops/s +Iteration 1: 21116.861 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 13670.275 ops/s + 21116.861 ops/s # JMH version: 1.33 @@ -654,15 +654,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1934181656579 as seed for Random -14713.551 ops/s -Iteration 1: 19314.774 ops/s +# Warmup Iteration 1: Using SEED=1810615355288 as seed for Random +24001.748 ops/s +Iteration 1: 28153.687 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 19314.774 ops/s + 28153.687 ops/s # JMH version: 1.33 @@ -677,15 +677,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1947241940085 as seed for Random -8237.615 ops/s -Iteration 1: 13866.376 ops/s +# Warmup Iteration 1: Using SEED=1823458131816 as seed for Random +8211.538 ops/s +Iteration 1: 18433.914 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 13866.376 ops/s + 18433.914 ops/s # JMH version: 1.33 @@ -700,15 +700,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:39 +# Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1960241373190 as seed for Random -6190.639 ops/s -Iteration 1: 8621.186 ops/s +# Warmup Iteration 1: Using SEED=1836259641969 as seed for Random +6454.671 ops/s +Iteration 1: 9498.713 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 8621.186 ops/s + 9498.713 ops/s # JMH version: 1.33 @@ -723,15 +723,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:26 +# Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1973241276756 as seed for Random -6261.236 ops/s -Iteration 1: 9445.532 ops/s +# Warmup Iteration 1: Using SEED=1849070258212 as seed for Random +13421.777 ops/s +Iteration 1: 34715.665 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 9445.532 ops/s + 34715.665 ops/s # JMH version: 1.33 @@ -746,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:13 +# Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1986307429755 as seed for Random -16409.890 ops/s -Iteration 1: 26782.656 ops/s +# Warmup Iteration 1: Using SEED=1861932401635 as seed for Random +15009.751 ops/s +Iteration 1: 28337.884 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 26782.656 ops/s + 28337.884 ops/s -# Run complete. Total time: 00:07:09 +# Run complete. Total time: 00:07:04 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 49358.755 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 43719.755 ops/s -c.g.f.j.databind.Deserialization.boon thrpt 24603.709 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 60453.435 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 54471.428 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 26909.434 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 5698.313 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 27715.434 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 27339.429 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 42054.877 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 46200.960 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 42457.306 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 26927.283 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 7226.684 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 48098.749 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 24971.797 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 36541.557 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 17595.924 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 5686.166 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 31736.189 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 27029.392 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 45418.605 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 17012.309 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 1019.882 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 10429.325 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 1507.646 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 13897.753 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 13670.275 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 19314.774 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 13866.376 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 8621.186 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 9445.532 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 26782.656 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 67878.154 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 57642.203 ops/s +c.g.f.j.databind.Deserialization.boon thrpt 31693.147 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 79731.440 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 72387.240 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 37418.342 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 6213.295 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 38250.916 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 37020.393 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 53412.235 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 58682.285 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 56451.650 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 34064.771 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 8306.150 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 61961.761 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 27272.784 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 52598.951 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 22690.391 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 7373.244 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 43420.696 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 37416.057 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 57942.549 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 22188.533 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 1872.272 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 11506.190 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 25238.646 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 17629.841 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 21116.861 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 28153.687 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 18433.914 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 9498.713 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 34715.665 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 28337.884 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt index 3bc818c..e1ceb44 100644 --- a/output/users-deser-1-100.txt +++ b/output/users-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2432404590946 as seed for Random -3583.771 ops/s -Iteration 1: 4442.822 ops/s +# Warmup Iteration 1: Using SEED=2301123923263 as seed for Random +5718.590 ops/s +Iteration 1: 6901.150 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 4442.822 ops/s + 6901.150 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:00 +# Run progress: 3.03% complete, ETA 00:06:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2445486924483 as seed for Random -3525.323 ops/s -Iteration 1: 4291.921 ops/s +# Warmup Iteration 1: Using SEED=2313952543189 as seed for Random +4884.015 ops/s +Iteration 1: 5560.912 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 4291.921 ops/s + 5560.912 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:47 +# Run progress: 6.06% complete, ETA 00:06:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2458671522971 as seed for Random -2142.983 ops/s -Iteration 1: 2605.311 ops/s +# Warmup Iteration 1: Using SEED=2326832508703 as seed for Random +2943.796 ops/s +Iteration 1: 3307.825 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": - 2605.311 ops/s + 3307.825 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:33 +# Run progress: 9.09% complete, ETA 00:06:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2471713673592 as seed for Random -4795.097 ops/s -Iteration 1: 6563.166 ops/s +# Warmup Iteration 1: Using SEED=2339714996929 as seed for Random +5913.059 ops/s +Iteration 1: 8746.396 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 6563.166 ops/s + 8746.396 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:19 +# Run progress: 12.12% complete, ETA 00:06:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2484722873987 as seed for Random -4245.651 ops/s -Iteration 1: 4602.891 ops/s +# Warmup Iteration 1: Using SEED=2352669659933 as seed for Random +5917.969 ops/s +Iteration 1: 6836.194 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 4602.891 ops/s + 6836.194 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:06 +# Run progress: 15.15% complete, ETA 00:06:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2497739719821 as seed for Random -1977.002 ops/s -Iteration 1: 2575.213 ops/s +# Warmup Iteration 1: Using SEED=2365536300738 as seed for Random +2745.714 ops/s +Iteration 1: 3498.060 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 2575.213 ops/s + 3498.060 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:52 +# Run progress: 18.18% complete, ETA 00:05:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2510758396927 as seed for Random -137.397 ops/s -Iteration 1: 349.357 ops/s +# Warmup Iteration 1: Using SEED=2378377333544 as seed for Random +441.111 ops/s +Iteration 1: 738.525 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 349.357 ops/s + 738.525 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:39 +# Run progress: 21.21% complete, ETA 00:05:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2523894463455 as seed for Random -2287.832 ops/s -Iteration 1: 2958.792 ops/s +# Warmup Iteration 1: Using SEED=2391271091914 as seed for Random +3322.845 ops/s +Iteration 1: 4160.979 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 2958.792 ops/s + 4160.979 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:05:26 +# Run progress: 24.24% complete, ETA 00:05:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2536946734554 as seed for Random -1908.651 ops/s -Iteration 1: 2888.291 ops/s +# Warmup Iteration 1: Using SEED=2404097374726 as seed for Random +2758.583 ops/s +Iteration 1: 3780.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 2888.291 ops/s + 3780.166 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:05:13 +# Run progress: 27.27% complete, ETA 00:05:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2549980087566 as seed for Random -3354.592 ops/s -Iteration 1: 4301.470 ops/s +# Warmup Iteration 1: Using SEED=2417044874079 as seed for Random +4267.084 ops/s +Iteration 1: 5465.122 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 4301.470 ops/s + 5465.122 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:05:00 +# Run progress: 30.30% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2562959219887 as seed for Random -4227.369 ops/s -Iteration 1: 4577.042 ops/s +# Warmup Iteration 1: Using SEED=2429944809620 as seed for Random +4914.908 ops/s +Iteration 1: 5885.663 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 4577.042 ops/s + 5885.663 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:47 +# Run progress: 33.33% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2575956422903 as seed for Random -3779.823 ops/s -Iteration 1: 4473.246 ops/s +# Warmup Iteration 1: Using SEED=2442771476882 as seed for Random +5339.907 ops/s +Iteration 1: 5959.974 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 4473.246 ops/s + 5959.974 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:34 +# Run progress: 36.36% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2588969682590 as seed for Random -1187.612 ops/s -Iteration 1: 1563.461 ops/s +# Warmup Iteration 1: Using SEED=2455626303682 as seed for Random +2885.862 ops/s +Iteration 1: 3577.702 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 1563.461 ops/s + 3577.702 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:20 +# Run progress: 39.39% complete, ETA 00:04:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2601942593913 as seed for Random -414.041 ops/s -Iteration 1: 696.067 ops/s +# Warmup Iteration 1: Using SEED=2468450771414 as seed for Random +641.682 ops/s +Iteration 1: 809.017 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 696.067 ops/s + 809.017 ops/s # JMH version: 1.33 @@ -332,15 +332,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:07 +# Run progress: 42.42% complete, ETA 00:04:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2614975092463 as seed for Random -4864.966 ops/s -Iteration 1: 4747.883 ops/s +# Warmup Iteration 1: Using SEED=2481350848864 as seed for Random +6489.299 ops/s +Iteration 1: 6561.948 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 4747.883 ops/s + 6561.948 ops/s # JMH version: 1.33 @@ -355,15 +355,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:54 +# Run progress: 45.45% complete, ETA 00:03:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2627977882453 as seed for Random -1920.591 ops/s -Iteration 1: 2415.508 ops/s +# Warmup Iteration 1: Using SEED=2494215084602 as seed for Random +2446.712 ops/s +Iteration 1: 2963.404 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 2415.508 ops/s + 2963.404 ops/s # JMH version: 1.33 @@ -378,15 +378,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:41 +# Run progress: 48.48% complete, ETA 00:03:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2640974300671 as seed for Random -2962.258 ops/s -Iteration 1: 4430.349 ops/s +# Warmup Iteration 1: Using SEED=2507119745040 as seed for Random +4696.510 ops/s +Iteration 1: 5744.048 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 4430.349 ops/s + 5744.048 ops/s # JMH version: 1.33 @@ -401,15 +401,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:28 +# Run progress: 51.52% complete, ETA 00:03:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2654017090334 as seed for Random -1679.371 ops/s -Iteration 1: 2206.451 ops/s +# Warmup Iteration 1: Using SEED=2520049167655 as seed for Random +2036.223 ops/s +Iteration 1: 2493.076 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 2206.451 ops/s + 2493.076 ops/s # JMH version: 1.33 @@ -424,15 +424,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:15 +# Run progress: 54.55% complete, ETA 00:03:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2667038379784 as seed for Random -177.775 ops/s -Iteration 1: 568.426 ops/s +# Warmup Iteration 1: Using SEED=2532959148899 as seed for Random +441.521 ops/s +Iteration 1: 702.176 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 568.426 ops/s + 702.176 ops/s # JMH version: 1.33 @@ -447,15 +447,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:02 +# Run progress: 57.58% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2680181668446 as seed for Random -2057.704 ops/s -Iteration 1: 3303.993 ops/s +# Warmup Iteration 1: Using SEED=2545871742302 as seed for Random +3447.433 ops/s +Iteration 1: 4487.470 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 3303.993 ops/s + 4487.470 ops/s # JMH version: 1.33 @@ -470,15 +470,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:49 +# Run progress: 60.61% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2693221004035 as seed for Random -1807.143 ops/s -Iteration 1: 2915.695 ops/s +# Warmup Iteration 1: Using SEED=2558791892845 as seed for Random +2307.161 ops/s +Iteration 1: 3720.627 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 2915.695 ops/s + 3720.627 ops/s # JMH version: 1.33 @@ -493,15 +493,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:36 +# Run progress: 63.64% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2706208893829 as seed for Random -2916.124 ops/s -Iteration 1: 4413.922 ops/s +# Warmup Iteration 1: Using SEED=2571695914919 as seed for Random +4032.587 ops/s +Iteration 1: 5734.098 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 4413.922 ops/s + 5734.098 ops/s # JMH version: 1.33 @@ -516,15 +516,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:23 +# Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2719279701981 as seed for Random -1081.549 ops/s -Iteration 1: 2082.857 ops/s +# Warmup Iteration 1: Using SEED=2584612398032 as seed for Random +1766.441 ops/s +Iteration 1: 2815.213 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 2082.857 ops/s + 2815.213 ops/s # JMH version: 1.33 @@ -539,15 +539,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:10 +# Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2732437276136 as seed for Random -653.345 ops/s -Iteration 1: 1016.873 ops/s +# Warmup Iteration 1: Using SEED=2597538220645 as seed for Random +896.533 ops/s +Iteration 1: 1572.749 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 1016.873 ops/s + 1572.749 ops/s # JMH version: 1.33 @@ -562,15 +562,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:57 +# Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2745590553803 as seed for Random -794.130 ops/s -Iteration 1: 1144.712 ops/s +# Warmup Iteration 1: Using SEED=2610406810239 as seed for Random +751.732 ops/s +Iteration 1: 1177.030 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 1144.712 ops/s + 1177.030 ops/s # JMH version: 1.33 @@ -585,15 +585,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:44 +# Run progress: 75.76% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2758608570303 as seed for Random -573.150 ops/s -Iteration 1: 2026.165 ops/s +# Warmup Iteration 1: Using SEED=2623314717508 as seed for Random +1242.728 ops/s +Iteration 1: 2605.322 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 2026.165 ops/s + 2605.322 ops/s # JMH version: 1.33 @@ -608,15 +608,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:31 +# Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2771655197588 as seed for Random -984.199 ops/s -Iteration 1: 1334.188 ops/s +# Warmup Iteration 1: Using SEED=2636144268707 as seed for Random +1366.286 ops/s +Iteration 1: 1832.773 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 1334.188 ops/s + 1832.773 ops/s # JMH version: 1.33 @@ -631,15 +631,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2784651668810 as seed for Random -1258.249 ops/s -Iteration 1: 1797.283 ops/s +# Warmup Iteration 1: Using SEED=2649096377089 as seed for Random +1540.233 ops/s +Iteration 1: 2201.709 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 1797.283 ops/s + 2201.709 ops/s # JMH version: 1.33 @@ -654,15 +654,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2797773643408 as seed for Random -1965.825 ops/s -Iteration 1: 2388.118 ops/s +# Warmup Iteration 1: Using SEED=2661938769155 as seed for Random +2529.670 ops/s +Iteration 1: 3060.999 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 2388.118 ops/s + 3060.999 ops/s # JMH version: 1.33 @@ -677,15 +677,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2810942692110 as seed for Random -886.395 ops/s -Iteration 1: 1413.139 ops/s +# Warmup Iteration 1: Using SEED=2674850486341 as seed for Random +1168.723 ops/s +Iteration 1: 1712.832 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 1413.139 ops/s + 1712.832 ops/s # JMH version: 1.33 @@ -700,15 +700,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:39 +# Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2824028671407 as seed for Random -536.576 ops/s -Iteration 1: 699.891 ops/s +# Warmup Iteration 1: Using SEED=2687743911035 as seed for Random +777.126 ops/s +Iteration 1: 921.076 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 699.891 ops/s + 921.076 ops/s # JMH version: 1.33 @@ -723,15 +723,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:26 +# Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2837091235813 as seed for Random -472.592 ops/s -Iteration 1: 2747.867 ops/s +# Warmup Iteration 1: Using SEED=2700635108954 as seed for Random +1546.239 ops/s +Iteration 1: 3599.847 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 2747.867 ops/s + 3599.847 ops/s # JMH version: 1.33 @@ -746,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:13 +# Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2850102718363 as seed for Random -664.396 ops/s -Iteration 1: 2456.656 ops/s +# Warmup Iteration 1: Using SEED=2713533483469 as seed for Random +1091.988 ops/s +Iteration 1: 3169.823 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 2456.656 ops/s + 3169.823 ops/s -# Run complete. Total time: 00:07:10 +# Run complete. Total time: 00:07:05 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 4442.822 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4291.921 ops/s -c.g.f.j.databind.Deserialization.boon thrpt 2605.311 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 6563.166 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 4602.891 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 2575.213 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 349.357 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 2958.792 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 2888.291 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 4301.470 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 4577.042 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 4473.246 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 1563.461 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 696.067 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 4747.883 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 2415.508 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 4430.349 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 2206.451 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 568.426 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 3303.993 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 2915.695 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 4413.922 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2082.857 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 1016.873 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 1144.712 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2026.165 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 1334.188 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 1797.283 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 2388.118 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 1413.139 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 699.891 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 2747.867 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 2456.656 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 6901.150 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 5560.912 ops/s +c.g.f.j.databind.Deserialization.boon thrpt 3307.825 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 8746.396 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 6836.194 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 3498.060 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 738.525 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 4160.979 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 3780.166 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 5465.122 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 5885.663 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 5959.974 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 3577.702 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 809.017 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 6561.948 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 2963.404 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 5744.048 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 2493.076 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 702.176 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 4487.470 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 3720.627 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 5734.098 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2815.213 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 1572.749 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 1177.030 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2605.322 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 1832.773 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 2201.709 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 3060.999 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 1712.832 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 921.076 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 3599.847 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 3169.823 ops/s diff --git a/output/users-deser-1-1000.txt b/output/users-deser-1-1000.txt index c377fe8..0a3ae6a 100644 --- a/output/users-deser-1-1000.txt +++ b/output/users-deser-1-1000.txt @@ -1,7 +1,7 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -10,29 +10,21 @@ # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb -# Run progress: 0.00% complete, ETA 00:13:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302056125404708 as seed for Random -639.503 ops/s -Iteration 1: 678.844 ops/s - -# Run progress: 1.52% complete, ETA 00:14:22 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302069367322956 as seed for Random -624.321 ops/s -Iteration 1: 671.369 ops/s +# Run progress: 0.00% complete, ETA 00:06:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3165278269283 as seed for Random +577.978 ops/s +Iteration 1: 662.354 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 675.107 ops/s + 662.354 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -41,29 +33,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:14:07 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302082591896442 as seed for Random -490.840 ops/s -Iteration 1: 546.703 ops/s - -# Run progress: 4.55% complete, ETA 00:13:54 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302095822232973 as seed for Random -486.222 ops/s -Iteration 1: 514.306 ops/s +# Run progress: 3.03% complete, ETA 00:06:59 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3178340375529 as seed for Random +414.509 ops/s +Iteration 1: 495.602 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 530.505 ops/s + 495.602 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -72,649 +56,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:13:40 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302109106777202 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - - - -# Run progress: 7.58% complete, ETA 00:10:59 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302110113035676 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Run progress: 6.06% complete, ETA 00:06:44 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3191324592235 as seed for Random +149.902 ops/s +Iteration 1: 211.462 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": + 211.462 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -723,29 +79,21 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:09:10 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302111051541220 as seed for Random -869.577 ops/s -Iteration 1: 887.876 ops/s - -# Run progress: 10.61% complete, ETA 00:09:34 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302124309697751 as seed for Random -878.615 ops/s -Iteration 1: 885.431 ops/s +# Run progress: 9.09% complete, ETA 00:06:32 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3204452101116 as seed for Random +671.583 ops/s +Iteration 1: 805.490 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 886.653 ops/s + 805.490 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -754,29 +102,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:09:50 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302137564023164 as seed for Random -656.619 ops/s -Iteration 1: 670.646 ops/s - -# Run progress: 13.64% complete, ETA 00:09:59 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302150809244385 as seed for Random -413.933 ops/s -Iteration 1: 438.863 ops/s +# Run progress: 12.12% complete, ETA 00:06:18 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3217370255166 as seed for Random +622.544 ops/s +Iteration 1: 684.031 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 554.755 ops/s + 684.031 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -785,29 +125,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:10:04 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302164049106480 as seed for Random -414.633 ops/s -Iteration 1: 462.620 ops/s - -# Run progress: 16.67% complete, ETA 00:10:06 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302177322738293 as seed for Random -408.508 ops/s -Iteration 1: 474.870 ops/s +# Run progress: 15.15% complete, ETA 00:06:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3230328794101 as seed for Random +245.434 ops/s +Iteration 1: 303.226 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 468.745 ops/s + 303.226 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -816,29 +148,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:10:05 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302190598801999 as seed for Random -83.349 ops/s -Iteration 1: 93.389 ops/s - -# Run progress: 19.70% complete, ETA 00:10:04 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302204385389986 as seed for Random -82.671 ops/s -Iteration 1: 91.558 ops/s +# Run progress: 18.18% complete, ETA 00:05:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3243355691433 as seed for Random +33.526 ops/s +Iteration 1: 60.485 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 92.473 ops/s + 60.485 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -847,29 +171,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:10:01 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302218108421644 as seed for Random -388.420 ops/s -Iteration 1: 404.412 ops/s - -# Run progress: 22.73% complete, ETA 00:09:56 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302231386898628 as seed for Random -407.915 ops/s -Iteration 1: 435.550 ops/s +# Run progress: 21.21% complete, ETA 00:05:41 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3257045292086 as seed for Random +331.112 ops/s +Iteration 1: 360.996 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 419.981 ops/s + 360.996 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -878,29 +194,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:09:49 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302244710220925 as seed for Random -439.247 ops/s -Iteration 1: 454.858 ops/s - -# Run progress: 25.76% complete, ETA 00:09:41 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302258029415521 as seed for Random -431.030 ops/s -Iteration 1: 455.691 ops/s +# Run progress: 24.24% complete, ETA 00:05:27 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3270103974608 as seed for Random +289.868 ops/s +Iteration 1: 349.942 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 455.274 ops/s + 349.942 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -909,29 +217,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:09:34 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302271362369388 as seed for Random -472.397 ops/s -Iteration 1: 521.400 ops/s - -# Run progress: 28.79% complete, ETA 00:09:25 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302284579320739 as seed for Random -509.786 ops/s -Iteration 1: 512.422 ops/s +# Run progress: 27.27% complete, ETA 00:05:14 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3283230552557 as seed for Random +417.279 ops/s +Iteration 1: 515.923 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 516.911 ops/s + 515.923 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -940,29 +240,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:09:15 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302297883609742 as seed for Random -540.909 ops/s -Iteration 1: 585.165 ops/s - -# Run progress: 31.82% complete, ETA 00:09:06 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302311423434919 as seed for Random -399.015 ops/s -Iteration 1: 480.372 ops/s +# Run progress: 30.30% complete, ETA 00:05:01 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3296210854035 as seed for Random +502.509 ops/s +Iteration 1: 560.989 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 532.768 ops/s + 560.989 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -971,29 +263,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:08:57 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302324973902539 as seed for Random -401.555 ops/s -Iteration 1: 449.898 ops/s - -# Run progress: 34.85% complete, ETA 00:08:47 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302338587814811 as seed for Random -416.786 ops/s -Iteration 1: 459.169 ops/s +# Run progress: 33.33% complete, ETA 00:04:47 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3309132289549 as seed for Random +455.027 ops/s +Iteration 1: 528.219 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 454.533 ops/s + 528.219 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1002,29 +286,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:08:37 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302352184246310 as seed for Random -295.872 ops/s -Iteration 1: 324.435 ops/s - -# Run progress: 37.88% complete, ETA 00:08:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302365793830436 as seed for Random -306.113 ops/s -Iteration 1: 351.204 ops/s +# Run progress: 36.36% complete, ETA 00:04:34 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3322106020365 as seed for Random +197.454 ops/s +Iteration 1: 232.546 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 337.820 ops/s + 232.546 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1033,29 +309,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:08:17 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302379442014278 as seed for Random -38.210 ops/s -Iteration 1: 104.825 ops/s - -# Run progress: 40.91% complete, ETA 00:08:08 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302394509945275 as seed for Random -39.205 ops/s -Iteration 1: 91.118 ops/s +# Run progress: 39.39% complete, ETA 00:04:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3335157268367 as seed for Random +44.107 ops/s +Iteration 1: 61.186 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 97.972 ops/s + 61.186 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1064,3087 +332,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:07:58 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302408926397255 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@10aafcc1 with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@8da8444 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@8cac8c2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@15e3d35f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7b557ad with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@53a2d41d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@13bc5478 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@79918934 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6ebbfec9 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@284543df with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6f2b3bf2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7fa07fc with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1da01f72 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1d1019a7 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5e9780e2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@49520ad1 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more - - - -# Run progress: 43.94% complete, ETA 00:07:31 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302410402753398 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1231fa2f with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:25) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@60f082c0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4fa90bbd with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Deserialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 49 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6eb2e3c2 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6d8b1800 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@5a225f5b with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@324f5671 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7734bf2f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@6979ad4a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7eb8aca0 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@3dd9a7b6 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@7d1c5894 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@68bf029d with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@1aa0433a with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@78e5560f with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more - -com.jsoniter.spi.JsonException: failed to generate decoder for: com.jsoniter.spi.ClassInfo@4b816c04 with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static java.lang.Object decode_(com.jsoniter.JsonIterator iter) throws java.io.IOException { java.util.ArrayList col = (java.util.ArrayList)com.jsoniter.CodegenAccess.resetExistingObject(iter); -if (iter.readNull()) { com.jsoniter.CodegenAccess.resetExistingObject(iter); return null; } -if (!com.jsoniter.CodegenAccess.readArrayStart(iter)) { -return col == null ? new java.util.ArrayList(0): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -} -Object a1 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(1): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -return obj; -} -Object a2 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(2): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -return obj; -} -Object a3 = (java.lang.String)iter.readString(); -if (com.jsoniter.CodegenAccess.nextToken(iter) != ',') { -java.util.ArrayList obj = col == null ? new java.util.ArrayList(3): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -return obj; -} -Object a4 = (java.lang.String)iter.readString(); -java.util.ArrayList obj = col == null ? new java.util.ArrayList(8): (java.util.ArrayList)com.jsoniter.CodegenAccess.reuseCollection(col); -obj.add(a1); -obj.add(a2); -obj.add(a3); -obj.add(a4); -while (com.jsoniter.CodegenAccess.nextToken(iter) == ',') { -obj.add((java.lang.String)iter.readString()); -} -return obj; -} - at com.jsoniter.Codegen.gen(Codegen.java:86) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:170) - at com.jsoniter.CodegenImplArray.genCollectionWithCapacity(CodegenImplArray.java:130) - at com.jsoniter.CodegenImplArray.genCollection(CodegenImplArray.java:84) - at com.jsoniter.Codegen.genSource(Codegen.java:234) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.CodegenImplNative.genReadOp(CodegenImplNative.java:213) - at com.jsoniter.CodegenImplNative.genField(CodegenImplNative.java:191) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:331) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.addFieldDispatch(CodegenImplObjectStrict.java:344) - at com.jsoniter.CodegenImplObjectStrict.renderTriTree(CodegenImplObjectStrict.java:304) - at com.jsoniter.CodegenImplObjectStrict.genObjectUsingStrict(CodegenImplObjectStrict.java:93) - at com.jsoniter.Codegen.genSource(Codegen.java:241) - at com.jsoniter.Codegen.gen(Codegen.java:68) - at com.jsoniter.Codegen.getDecoder(Codegen.java:25) - at com.jsoniter.JsonIterator.read(JsonIterator.java:385) - at com.jsoniter.JsonIterator.read(JsonIterator.java:375) - at com.jsoniter.JsonIterator.deserialize(JsonIterator.java:441) - at com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter(Deserialization.java:137) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_jsoniter_jmhTest.jsoniter_Throughput(Deserialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.decoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.Codegen.gen(Codegen.java:78) - ... 48 more +# Run progress: 42.42% complete, ETA 00:04:09 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3348771610096 as seed for Random +625.963 ops/s +Iteration 1: 626.017 ops/s +Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": + 626.017 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4153,29 +355,21 @@ Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.d # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:07:06 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302411826873783 as seed for Random -361.558 ops/s -Iteration 1: 453.261 ops/s - -# Run progress: 46.97% complete, ETA 00:06:56 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302425389842140 as seed for Random -380.158 ops/s -Iteration 1: 473.212 ops/s +# Run progress: 45.45% complete, ETA 00:03:55 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3361752727660 as seed for Random +238.118 ops/s +Iteration 1: 262.397 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 463.237 ops/s + 262.397 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4184,29 +378,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:06:46 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302439077331519 as seed for Random -355.819 ops/s -Iteration 1: 406.350 ops/s - -# Run progress: 50.00% complete, ETA 00:06:36 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302452727733678 as seed for Random -349.358 ops/s -Iteration 1: 420.384 ops/s +# Run progress: 48.48% complete, ETA 00:03:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3374780441940 as seed for Random +324.806 ops/s +Iteration 1: 526.412 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 413.367 ops/s + 526.412 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4215,29 +401,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:06:25 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302466351073569 as seed for Random -225.184 ops/s -Iteration 1: 288.427 ops/s - -# Run progress: 53.03% complete, ETA 00:06:15 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302480078252541 as seed for Random -239.985 ops/s -Iteration 1: 265.304 ops/s +# Run progress: 51.52% complete, ETA 00:03:29 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3387748540988 as seed for Random +187.011 ops/s +Iteration 1: 221.334 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 276.865 ops/s + 221.334 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4246,29 +424,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:06:04 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302493778356249 as seed for Random -60.546 ops/s -Iteration 1: 69.988 ops/s - -# Run progress: 56.06% complete, ETA 00:05:53 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302508052133228 as seed for Random -65.184 ops/s -Iteration 1: 73.216 ops/s +# Run progress: 54.55% complete, ETA 00:03:16 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3400833969250 as seed for Random +17.444 ops/s +Iteration 1: 63.465 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 71.602 ops/s + 63.465 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4277,29 +447,21 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:05:43 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302522294225106 as seed for Random -349.047 ops/s -Iteration 1: 428.704 ops/s - -# Run progress: 59.09% complete, ETA 00:05:32 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302535883674395 as seed for Random -352.972 ops/s -Iteration 1: 438.208 ops/s +# Run progress: 57.58% complete, ETA 00:03:03 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3414435060615 as seed for Random +223.353 ops/s +Iteration 1: 424.265 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 433.456 ops/s + 424.265 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4308,29 +470,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:05:20 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302549544796015 as seed for Random -301.384 ops/s -Iteration 1: 408.217 ops/s - -# Run progress: 62.12% complete, ETA 00:05:09 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302563187590227 as seed for Random -213.873 ops/s -Iteration 1: 395.983 ops/s +# Run progress: 60.61% complete, ETA 00:02:50 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3427530486597 as seed for Random +191.866 ops/s +Iteration 1: 354.410 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 402.100 ops/s + 354.410 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4339,29 +493,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:04:57 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302576745576000 as seed for Random -388.638 ops/s -Iteration 1: 450.046 ops/s - -# Run progress: 65.15% complete, ETA 00:04:45 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302590340405598 as seed for Random -398.061 ops/s -Iteration 1: 462.280 ops/s +# Run progress: 63.64% complete, ETA 00:02:37 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3440657141342 as seed for Random +397.068 ops/s +Iteration 1: 550.273 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 456.163 ops/s + 550.273 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4370,29 +516,21 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:04:33 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302604088310502 as seed for Random -97.561 ops/s -Iteration 1: 236.208 ops/s - -# Run progress: 68.18% complete, ETA 00:04:22 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302618047231209 as seed for Random -152.718 ops/s -Iteration 1: 241.265 ops/s +# Run progress: 66.67% complete, ETA 00:02:24 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3453645363594 as seed for Random +195.505 ops/s +Iteration 1: 236.613 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 238.736 ops/s + 236.613 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -4401,7 +539,263 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:04:10 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302631891832633 as seed for Random +# Run progress: 69.70% complete, ETA 00:02:11 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3466699277133 as seed for Random +28.025 ops/s +Iteration 1: 83.484 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": + 83.484 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple + +# Run progress: 72.73% complete, ETA 00:01:58 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3480068344454 as seed for Random +74.679 ops/s +Iteration 1: 89.518 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": + 89.518 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson + +# Run progress: 75.76% complete, ETA 00:01:45 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3493414634599 as seed for Random +172.446 ops/s +Iteration 1: 196.741 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": + 196.741 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson + +# Run progress: 78.79% complete, ETA 00:01:31 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3506522316785 as seed for Random +80.806 ops/s +Iteration 1: 100.794 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": + 100.794 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi + +# Run progress: 81.82% complete, ETA 00:01:18 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3519869467141 as seed for Random +90.757 ops/s +Iteration 1: 222.319 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": + 222.319 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson + +# Run progress: 84.85% complete, ETA 00:01:05 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3533019897939 as seed for Random +234.925 ops/s +Iteration 1: 277.200 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": + 277.200 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson + +# Run progress: 87.88% complete, ETA 00:00:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3546149004585 as seed for Random +89.614 ops/s +Iteration 1: 110.979 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": + 110.979 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson + +# Run progress: 90.91% complete, ETA 00:00:39 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3559435263263 as seed for Random +38.359 ops/s +Iteration 1: 42.379 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": + 42.379 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry + +# Run progress: 93.94% complete, ETA 00:00:26 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3573734555204 as seed for Random +270.196 ops/s +Iteration 1: 309.797 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": + 309.797 ops/s + + +# JMH version: 1.33 +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g +# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) +# Warmup: 1 iterations, 10 s each +# Measurement: 1 iterations, 2 s each +# Timeout: 10 min per iteration +# Threads: 16 threads, will synchronize iterations +# Benchmark mode: Throughput, ops/time +# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java + +# Run progress: 96.97% complete, ETA 00:00:13 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3586803809163 as seed for Random +136.401 ops/s +Iteration 1: 256.105 ops/s + + +Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": + 256.105 ops/s + + +# Run complete. Total time: 00:07:14 + +REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on +why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial +experiments, perform baseline and negative tests that provide experimental control, make sure +the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. +Do not assume the numbers tell you what you want them to tell. + +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Deserialization.avajejsonb thrpt 662.354 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 495.602 ops/s +c.g.f.j.databind.Deserialization.boon thrpt 211.462 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 805.490 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 684.031 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 303.226 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 60.485 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 360.996 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 349.942 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 515.923 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 560.989 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 528.219 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 232.546 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 61.186 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 626.017 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 262.397 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 526.412 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 221.334 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 63.465 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 424.265 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 354.410 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 550.273 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 236.613 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 83.484 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 89.518 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 196.741 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 100.794 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 222.319 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 277.200 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 110.979 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 42.379 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 309.797 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 256.105 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt index 6970f02..504260e 100644 --- a/output/users-ser-1-1.txt +++ b/output/users-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=278831861479 as seed for Random -362763.098 ops/s -Iteration 1: 402027.331 ops/s +# Warmup Iteration 1: Using SEED=174972919497 as seed for Random +718671.236 ops/s +Iteration 1: 787776.193 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 402027.331 ops/s + 787776.193 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:58 +# Run progress: 3.03% complete, ETA 00:06:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=291871846703 as seed for Random -373386.505 ops/s -Iteration 1: 424056.837 ops/s +# Warmup Iteration 1: Using SEED=187885868989 as seed for Random +553796.841 ops/s +Iteration 1: 613162.196 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 424056.837 ops/s + 613162.196 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:43 +# Run progress: 6.06% complete, ETA 00:06:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=304829559732 as seed for Random -111215.338 ops/s -Iteration 1: 127070.086 ops/s +# Warmup Iteration 1: Using SEED=200797098943 as seed for Random +148321.009 ops/s +Iteration 1: 165183.883 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": - 127070.086 ops/s + 165183.883 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:31 +# Run progress: 9.09% complete, ETA 00:06:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=317955234224 as seed for Random -501857.737 ops/s -Iteration 1: 574958.053 ops/s +# Warmup Iteration 1: Using SEED=213661998790 as seed for Random +701796.176 ops/s +Iteration 1: 806712.515 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 574958.053 ops/s + 806712.515 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:18 +# Run progress: 12.12% complete, ETA 00:06:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=331029002173 as seed for Random -459310.678 ops/s -Iteration 1: 497796.244 ops/s +# Warmup Iteration 1: Using SEED=226541277028 as seed for Random +775608.064 ops/s +Iteration 1: 767811.414 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 497796.244 ops/s + 767811.414 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:05 +# Run progress: 15.15% complete, ETA 00:06:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=344070857445 as seed for Random -384824.004 ops/s -Iteration 1: 513071.165 ops/s +# Warmup Iteration 1: Using SEED=239413210708 as seed for Random +508181.631 ops/s +Iteration 1: 564454.731 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 513071.165 ops/s + 564454.731 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:52 +# Run progress: 18.18% complete, ETA 00:05:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=357075678763 as seed for Random -1809.332 ops/s -Iteration 1: 962.138 ops/s +# Warmup Iteration 1: Using SEED=252246748917 as seed for Random +2786.082 ops/s +Iteration 1: 1534.220 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 962.138 ops/s + 1534.220 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:39 +# Run progress: 21.21% complete, ETA 00:05:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=370141974563 as seed for Random -191095.430 ops/s -Iteration 1: 236068.111 ops/s +# Warmup Iteration 1: Using SEED=265100951782 as seed for Random +309307.513 ops/s +Iteration 1: 369894.125 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 236068.111 ops/s + 369894.125 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:05:26 +# Run progress: 24.24% complete, ETA 00:05:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=383198141837 as seed for Random -117956.049 ops/s -Iteration 1: 179739.026 ops/s +# Warmup Iteration 1: Using SEED=278039834932 as seed for Random +214220.841 ops/s +Iteration 1: 255536.879 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 179739.026 ops/s + 255536.879 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:05:13 +# Run progress: 27.27% complete, ETA 00:05:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=396160073782 as seed for Random -388895.518 ops/s -Iteration 1: 440961.442 ops/s +# Warmup Iteration 1: Using SEED=290961022462 as seed for Random +534022.354 ops/s +Iteration 1: 594452.216 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 440961.442 ops/s + 594452.216 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:59 +# Run progress: 30.30% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=409209744351 as seed for Random -376389.128 ops/s -Iteration 1: 437757.714 ops/s +# Warmup Iteration 1: Using SEED=303843322193 as seed for Random +521358.677 ops/s +Iteration 1: 544240.835 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 437757.714 ops/s + 544240.835 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:46 +# Run progress: 33.33% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=422195630825 as seed for Random -402329.435 ops/s -Iteration 1: 456866.826 ops/s +# Warmup Iteration 1: Using SEED=316824009127 as seed for Random +533096.200 ops/s +Iteration 1: 614235.596 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 456866.826 ops/s + 614235.596 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:33 +# Run progress: 36.36% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=435163093582 as seed for Random -75134.086 ops/s -Iteration 1: 114950.380 ops/s +# Warmup Iteration 1: Using SEED=329681004451 as seed for Random +113330.684 ops/s +Iteration 1: 150578.254 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 114950.380 ops/s + 150578.254 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:20 +# Run progress: 39.39% complete, ETA 00:04:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=448121265061 as seed for Random -113030.612 ops/s -Iteration 1: 162048.425 ops/s +# Warmup Iteration 1: Using SEED=342534284221 as seed for Random +166312.669 ops/s +Iteration 1: 238117.751 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 162048.425 ops/s + 238117.751 ops/s # JMH version: 1.33 @@ -332,15 +332,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:07 +# Run progress: 42.42% complete, ETA 00:04:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=461100291498 as seed for Random -356317.649 ops/s -Iteration 1: 401701.229 ops/s +# Warmup Iteration 1: Using SEED=355412817154 as seed for Random +731087.857 ops/s +Iteration 1: 814143.128 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 401701.229 ops/s + 814143.128 ops/s # JMH version: 1.33 @@ -355,15 +355,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:54 +# Run progress: 45.45% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=474050315625 as seed for Random -146963.702 ops/s -Iteration 1: 164786.344 ops/s +# Warmup Iteration 1: Using SEED=368259895392 as seed for Random +284622.338 ops/s +Iteration 1: 341284.063 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 164786.344 ops/s + 341284.063 ops/s # JMH version: 1.33 @@ -378,15 +378,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:41 +# Run progress: 48.48% complete, ETA 00:03:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=487038432398 as seed for Random -220480.704 ops/s -Iteration 1: 390960.550 ops/s +# Warmup Iteration 1: Using SEED=381113605170 as seed for Random +324738.450 ops/s +Iteration 1: 563295.044 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 390960.550 ops/s + 563295.044 ops/s # JMH version: 1.33 @@ -401,15 +401,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:28 +# Run progress: 51.52% complete, ETA 00:03:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=499992139097 as seed for Random -177116.131 ops/s -Iteration 1: 208668.923 ops/s +# Warmup Iteration 1: Using SEED=393949385797 as seed for Random +255265.376 ops/s +Iteration 1: 302155.444 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 208668.923 ops/s + 302155.444 ops/s # JMH version: 1.33 @@ -424,15 +424,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:15 +# Run progress: 54.55% complete, ETA 00:03:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=513010295613 as seed for Random -68192.172 ops/s -Iteration 1: 132977.950 ops/s +# Warmup Iteration 1: Using SEED=406880241241 as seed for Random +94959.390 ops/s +Iteration 1: 177526.068 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 132977.950 ops/s + 177526.068 ops/s # JMH version: 1.33 @@ -447,15 +447,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:03:02 +# Run progress: 57.58% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=525994098176 as seed for Random -148592.416 ops/s -Iteration 1: 217137.610 ops/s +# Warmup Iteration 1: Using SEED=419760207633 as seed for Random +274795.766 ops/s +Iteration 1: 319216.019 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 217137.610 ops/s + 319216.019 ops/s # JMH version: 1.33 @@ -470,15 +470,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:49 +# Run progress: 60.61% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=539095188148 as seed for Random -91151.024 ops/s -Iteration 1: 109505.035 ops/s +# Warmup Iteration 1: Using SEED=432736590183 as seed for Random +114629.782 ops/s +Iteration 1: 141844.583 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 109505.035 ops/s + 141844.583 ops/s # JMH version: 1.33 @@ -493,15 +493,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:36 +# Run progress: 63.64% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=552107321726 as seed for Random -293915.946 ops/s -Iteration 1: 389066.692 ops/s +# Warmup Iteration 1: Using SEED=445622494742 as seed for Random +394840.403 ops/s +Iteration 1: 529782.495 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 389066.692 ops/s + 529782.495 ops/s # JMH version: 1.33 @@ -516,15 +516,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:23 +# Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=565142798306 as seed for Random -12163.306 ops/s -Iteration 1: 125492.222 ops/s +# Warmup Iteration 1: Using SEED=458471635756 as seed for Random +17199.894 ops/s +Iteration 1: 362540.869 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 125492.222 ops/s + 362540.869 ops/s # JMH version: 1.33 @@ -539,15 +539,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:10 +# Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=578242373503 as seed for Random -35140.274 ops/s -Iteration 1: 46197.001 ops/s +# Warmup Iteration 1: Using SEED=471332788650 as seed for Random +15720.405 ops/s +Iteration 1: 18118.730 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 46197.001 ops/s + 18118.730 ops/s # JMH version: 1.33 @@ -562,15 +562,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:57 +# Run progress: 72.73% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=591282810406 as seed for Random -51902.860 ops/s -Iteration 1: 74617.078 ops/s +# Warmup Iteration 1: Using SEED=484226303553 as seed for Random +51100.872 ops/s +Iteration 1: 68885.756 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 74617.078 ops/s + 68885.756 ops/s # JMH version: 1.33 @@ -585,15 +585,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:44 +# Run progress: 75.76% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=604356803881 as seed for Random -59172.297 ops/s -Iteration 1: 201748.269 ops/s +# Warmup Iteration 1: Using SEED=497106990916 as seed for Random +104031.990 ops/s +Iteration 1: 274593.131 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 201748.269 ops/s + 274593.131 ops/s # JMH version: 1.33 @@ -608,15 +608,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:31 +# Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=617378023449 as seed for Random -21069.104 ops/s -Iteration 1: 34307.359 ops/s +# Warmup Iteration 1: Using SEED=509985576214 as seed for Random +13143.034 ops/s +Iteration 1: 63579.396 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 34307.359 ops/s + 63579.396 ops/s # JMH version: 1.33 @@ -631,15 +631,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=630406503355 as seed for Random -171628.114 ops/s -Iteration 1: 244488.768 ops/s +# Warmup Iteration 1: Using SEED=522910791088 as seed for Random +268434.813 ops/s +Iteration 1: 330537.950 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 244488.768 ops/s + 330537.950 ops/s # JMH version: 1.33 @@ -654,15 +654,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=643460464742 as seed for Random -107653.322 ops/s -Iteration 1: 217650.682 ops/s +# Warmup Iteration 1: Using SEED=535842323626 as seed for Random +287587.333 ops/s +Iteration 1: 322418.732 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 217650.682 ops/s + 322418.732 ops/s # JMH version: 1.33 @@ -677,15 +677,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=656401273142 as seed for Random -34759.069 ops/s -Iteration 1: 88535.441 ops/s +# Warmup Iteration 1: Using SEED=548803871491 as seed for Random +33338.295 ops/s +Iteration 1: 109006.324 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 88535.441 ops/s + 109006.324 ops/s # JMH version: 1.33 @@ -700,15 +700,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:39 +# Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=669419743462 as seed for Random -40323.179 ops/s -Iteration 1: 66114.364 ops/s +# Warmup Iteration 1: Using SEED=561693582167 as seed for Random +62305.096 ops/s +Iteration 1: 83603.744 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 66114.364 ops/s + 83603.744 ops/s # JMH version: 1.33 @@ -723,15 +723,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:26 +# Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=682528353878 as seed for Random -25375.921 ops/s -Iteration 1: 42123.004 ops/s +# Warmup Iteration 1: Using SEED=574570797327 as seed for Random +37640.515 ops/s +Iteration 1: 80921.595 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 42123.004 ops/s + 80921.595 ops/s # JMH version: 1.33 @@ -746,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:13 +# Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=695571976265 as seed for Random -52400.152 ops/s -Iteration 1: 108863.890 ops/s +# Warmup Iteration 1: Using SEED=587536895285 as seed for Random +107721.465 ops/s +Iteration 1: 134522.690 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 108863.890 ops/s + 134522.690 ops/s -# Run complete. Total time: 00:07:09 +# Run complete. Total time: 00:07:05 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 402027.331 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 424056.837 ops/s -c.g.f.j.databind.Serialization.boon thrpt 127070.086 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 574958.053 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 497796.244 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 513071.165 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 962.138 ops/s -c.g.f.j.databind.Serialization.genson thrpt 236068.111 ops/s -c.g.f.j.databind.Serialization.gson thrpt 179739.026 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 440961.442 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 437757.714 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 456866.826 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 114950.380 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 162048.425 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 401701.229 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 164786.344 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 390960.550 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 208668.923 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 132977.950 ops/s -c.g.f.j.stream.Serialization.genson thrpt 217137.610 ops/s -c.g.f.j.stream.Serialization.gson thrpt 109505.035 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 389066.692 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 125492.222 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 46197.001 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 74617.078 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 201748.269 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 34307.359 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 244488.768 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 217650.682 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 88535.441 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 66114.364 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 42123.004 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 108863.890 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 787776.193 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 613162.196 ops/s +c.g.f.j.databind.Serialization.boon thrpt 165183.883 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 806712.515 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 767811.414 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 564454.731 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 1534.220 ops/s +c.g.f.j.databind.Serialization.genson thrpt 369894.125 ops/s +c.g.f.j.databind.Serialization.gson thrpt 255536.879 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 594452.216 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 544240.835 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 614235.596 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 150578.254 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 238117.751 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 814143.128 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 341284.063 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 563295.044 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 302155.444 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 177526.068 ops/s +c.g.f.j.stream.Serialization.genson thrpt 319216.019 ops/s +c.g.f.j.stream.Serialization.gson thrpt 141844.583 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 529782.495 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 362540.869 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 18118.730 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 68885.756 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 274593.131 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 63579.396 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 330537.950 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 322418.732 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 109006.324 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 83603.744 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 80921.595 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 134522.690 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt index 9f13628..3bc90cd 100644 --- a/output/users-ser-1-10.txt +++ b/output/users-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1139011290091 as seed for Random -57068.462 ops/s -Iteration 1: 61895.648 ops/s +# Warmup Iteration 1: Using SEED=1026047747720 as seed for Random +80364.854 ops/s +Iteration 1: 86861.218 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 61895.648 ops/s + 86861.218 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:56 +# Run progress: 3.03% complete, ETA 00:06:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1152006651862 as seed for Random -47252.359 ops/s -Iteration 1: 55431.030 ops/s +# Warmup Iteration 1: Using SEED=1038926485133 as seed for Random +55629.607 ops/s +Iteration 1: 61544.149 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 55431.030 ops/s + 61544.149 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:43 +# Run progress: 6.06% complete, ETA 00:06:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1165014788399 as seed for Random -16245.317 ops/s -Iteration 1: 20235.166 ops/s +# Warmup Iteration 1: Using SEED=1051847147180 as seed for Random +20797.946 ops/s +Iteration 1: 25409.249 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": - 20235.166 ops/s + 25409.249 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:30 +# Run progress: 9.09% complete, ETA 00:06:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1178027822029 as seed for Random -73187.021 ops/s -Iteration 1: 77863.729 ops/s +# Warmup Iteration 1: Using SEED=1064666569487 as seed for Random +96777.922 ops/s +Iteration 1: 102580.150 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 77863.729 ops/s + 102580.150 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:17 +# Run progress: 12.12% complete, ETA 00:06:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1191081182087 as seed for Random -61155.265 ops/s -Iteration 1: 61176.284 ops/s +# Warmup Iteration 1: Using SEED=1077492558580 as seed for Random +93307.145 ops/s +Iteration 1: 90958.980 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 61176.284 ops/s + 90958.980 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:04 +# Run progress: 15.15% complete, ETA 00:06:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1204084057691 as seed for Random -27288.533 ops/s -Iteration 1: 39792.109 ops/s +# Warmup Iteration 1: Using SEED=1090314131713 as seed for Random +66182.434 ops/s +Iteration 1: 73288.914 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 39792.109 ops/s + 73288.914 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:51 +# Run progress: 18.18% complete, ETA 00:05:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1217081005020 as seed for Random -484.369 ops/s -Iteration 1: 387.617 ops/s +# Warmup Iteration 1: Using SEED=1103171830282 as seed for Random +594.762 ops/s +Iteration 1: 426.012 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 387.617 ops/s + 426.012 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:38 +# Run progress: 21.21% complete, ETA 00:05:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1230162504669 as seed for Random -29558.969 ops/s -Iteration 1: 37550.079 ops/s +# Warmup Iteration 1: Using SEED=1116083450403 as seed for Random +44949.117 ops/s +Iteration 1: 53954.727 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 37550.079 ops/s + 53954.727 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:05:25 +# Run progress: 24.24% complete, ETA 00:05:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1243173523680 as seed for Random -16028.535 ops/s -Iteration 1: 22213.333 ops/s +# Warmup Iteration 1: Using SEED=1128942608093 as seed for Random +21477.926 ops/s +Iteration 1: 28191.278 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 22213.333 ops/s + 28191.278 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:05:12 +# Run progress: 27.27% complete, ETA 00:05:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1256171604992 as seed for Random -49257.900 ops/s -Iteration 1: 55333.419 ops/s +# Warmup Iteration 1: Using SEED=1141755484504 as seed for Random +60998.015 ops/s +Iteration 1: 64376.552 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 55333.419 ops/s + 64376.552 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:59 +# Run progress: 30.30% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1269160183940 as seed for Random -50078.785 ops/s -Iteration 1: 56095.742 ops/s +# Warmup Iteration 1: Using SEED=1154663042397 as seed for Random +55447.140 ops/s +Iteration 1: 65240.421 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 56095.742 ops/s + 65240.421 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:46 +# Run progress: 33.33% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1282181536265 as seed for Random -45598.444 ops/s -Iteration 1: 52299.831 ops/s +# Warmup Iteration 1: Using SEED=1167489161877 as seed for Random +58833.093 ops/s +Iteration 1: 64630.085 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 52299.831 ops/s + 64630.085 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:33 +# Run progress: 36.36% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1295147534640 as seed for Random -6488.848 ops/s -Iteration 1: 12509.281 ops/s +# Warmup Iteration 1: Using SEED=1180296624278 as seed for Random +11320.200 ops/s +Iteration 1: 15396.811 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 12509.281 ops/s + 15396.811 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:20 +# Run progress: 39.39% complete, ETA 00:04:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1308143046761 as seed for Random -17174.637 ops/s -Iteration 1: 20438.610 ops/s +# Warmup Iteration 1: Using SEED=1193095050102 as seed for Random +16459.892 ops/s +Iteration 1: 22049.523 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 20438.610 ops/s + 22049.523 ops/s # JMH version: 1.33 @@ -332,15 +332,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:07 +# Run progress: 42.42% complete, ETA 00:04:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1321119847567 as seed for Random -51613.484 ops/s -Iteration 1: 65049.786 ops/s +# Warmup Iteration 1: Using SEED=1205919413854 as seed for Random +99362.032 ops/s +Iteration 1: 105949.210 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 65049.786 ops/s + 105949.210 ops/s # JMH version: 1.33 @@ -355,15 +355,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:54 +# Run progress: 45.45% complete, ETA 00:03:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1334063871270 as seed for Random -26487.157 ops/s -Iteration 1: 18348.607 ops/s +# Warmup Iteration 1: Using SEED=1218746336720 as seed for Random +39001.777 ops/s +Iteration 1: 40973.125 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 18348.607 ops/s + 40973.125 ops/s # JMH version: 1.33 @@ -378,15 +378,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:41 +# Run progress: 48.48% complete, ETA 00:03:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1347075119749 as seed for Random -35915.156 ops/s -Iteration 1: 48441.433 ops/s +# Warmup Iteration 1: Using SEED=1231567119058 as seed for Random +25569.694 ops/s +Iteration 1: 72456.540 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 48441.433 ops/s + 72456.540 ops/s # JMH version: 1.33 @@ -401,15 +401,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:28 +# Run progress: 51.52% complete, ETA 00:03:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1360059253693 as seed for Random -20887.080 ops/s -Iteration 1: 24748.221 ops/s +# Warmup Iteration 1: Using SEED=1244370175102 as seed for Random +28405.876 ops/s +Iteration 1: 32868.180 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 24748.221 ops/s + 32868.180 ops/s # JMH version: 1.33 @@ -424,15 +424,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:15 +# Run progress: 54.55% complete, ETA 00:03:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1373112962840 as seed for Random -13676.284 ops/s -Iteration 1: 18626.118 ops/s +# Warmup Iteration 1: Using SEED=1257175598336 as seed for Random +21393.037 ops/s +Iteration 1: 26124.238 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 18626.118 ops/s + 26124.238 ops/s # JMH version: 1.33 @@ -447,15 +447,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:03:02 +# Run progress: 57.58% complete, ETA 00:02:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1386097505281 as seed for Random -15822.441 ops/s -Iteration 1: 32050.374 ops/s +# Warmup Iteration 1: Using SEED=1270025083500 as seed for Random +23876.556 ops/s +Iteration 1: 40196.766 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 32050.374 ops/s + 40196.766 ops/s # JMH version: 1.33 @@ -470,15 +470,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:49 +# Run progress: 60.61% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1399130743604 as seed for Random -10971.903 ops/s -Iteration 1: 12258.445 ops/s +# Warmup Iteration 1: Using SEED=1282941617896 as seed for Random +11327.468 ops/s +Iteration 1: 16314.635 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 12258.445 ops/s + 16314.635 ops/s # JMH version: 1.33 @@ -493,15 +493,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:36 +# Run progress: 63.64% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1412243190964 as seed for Random -34958.372 ops/s -Iteration 1: 49345.158 ops/s +# Warmup Iteration 1: Using SEED=1295843930812 as seed for Random +54481.176 ops/s +Iteration 1: 64748.244 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 49345.158 ops/s + 64748.244 ops/s # JMH version: 1.33 @@ -516,15 +516,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:23 +# Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1425226762125 as seed for Random -13497.605 ops/s -Iteration 1: 13760.828 ops/s +# Warmup Iteration 1: Using SEED=1308644995490 as seed for Random +1959.244 ops/s +Iteration 1: 44529.722 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 13760.828 ops/s + 44529.722 ops/s # JMH version: 1.33 @@ -539,15 +539,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:10 +# Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1438285877481 as seed for Random -1811.686 ops/s -Iteration 1: 2057.414 ops/s +# Warmup Iteration 1: Using SEED=1321470805213 as seed for Random +2565.188 ops/s +Iteration 1: 7317.537 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 2057.414 ops/s + 7317.537 ops/s # JMH version: 1.33 @@ -562,15 +562,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:57 +# Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1451461153334 as seed for Random -6030.238 ops/s -Iteration 1: 8589.467 ops/s +# Warmup Iteration 1: Using SEED=1334316285257 as seed for Random +6874.237 ops/s +Iteration 1: 10588.912 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 8589.467 ops/s + 10588.912 ops/s # JMH version: 1.33 @@ -585,15 +585,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:44 +# Run progress: 75.76% complete, ETA 00:01:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1464475539449 as seed for Random -8943.824 ops/s -Iteration 1: 18806.796 ops/s +# Warmup Iteration 1: Using SEED=1347256058482 as seed for Random +12027.436 ops/s +Iteration 1: 30297.906 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 18806.796 ops/s + 30297.906 ops/s # JMH version: 1.33 @@ -608,15 +608,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:31 +# Run progress: 78.79% complete, ETA 00:01:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1477481004560 as seed for Random -2470.470 ops/s -Iteration 1: 5908.209 ops/s +# Warmup Iteration 1: Using SEED=1360075422700 as seed for Random +4574.576 ops/s +Iteration 1: 8884.659 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 5908.209 ops/s + 8884.659 ops/s # JMH version: 1.33 @@ -631,15 +631,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1490550434224 as seed for Random -14751.499 ops/s -Iteration 1: 25074.873 ops/s +# Warmup Iteration 1: Using SEED=1372949986819 as seed for Random +32028.472 ops/s +Iteration 1: 38724.557 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 25074.873 ops/s + 38724.557 ops/s # JMH version: 1.33 @@ -654,15 +654,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1503589194583 as seed for Random -11949.667 ops/s -Iteration 1: 29475.136 ops/s +# Warmup Iteration 1: Using SEED=1385756949842 as seed for Random +39597.415 ops/s +Iteration 1: 45210.053 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 29475.136 ops/s + 45210.053 ops/s # JMH version: 1.33 @@ -677,15 +677,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1516648743325 as seed for Random -2025.233 ops/s -Iteration 1: 3930.016 ops/s +# Warmup Iteration 1: Using SEED=1398558133047 as seed for Random +6582.219 ops/s +Iteration 1: 12708.138 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 3930.016 ops/s + 12708.138 ops/s # JMH version: 1.33 @@ -700,15 +700,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:39 +# Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1529766516319 as seed for Random -3450.914 ops/s -Iteration 1: 6268.890 ops/s +# Warmup Iteration 1: Using SEED=1411446756015 as seed for Random +6579.467 ops/s +Iteration 1: 8164.498 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 6268.890 ops/s + 8164.498 ops/s # JMH version: 1.33 @@ -723,15 +723,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:26 +# Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1542816837586 as seed for Random -2762.571 ops/s -Iteration 1: 6894.275 ops/s +# Warmup Iteration 1: Using SEED=1424380399303 as seed for Random +3449.591 ops/s +Iteration 1: 8329.339 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 6894.275 ops/s + 8329.339 ops/s # JMH version: 1.33 @@ -746,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:13 +# Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1555831783168 as seed for Random -7278.473 ops/s -Iteration 1: 9215.607 ops/s +# Warmup Iteration 1: Using SEED=1437273627266 as seed for Random +9926.645 ops/s +Iteration 1: 12869.220 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 9215.607 ops/s + 12869.220 ops/s -# Run complete. Total time: 00:07:09 +# Run complete. Total time: 00:07:04 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -765,37 +765,37 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 61895.648 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 55431.030 ops/s -c.g.f.j.databind.Serialization.boon thrpt 20235.166 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 77863.729 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 61176.284 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 39792.109 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 387.617 ops/s -c.g.f.j.databind.Serialization.genson thrpt 37550.079 ops/s -c.g.f.j.databind.Serialization.gson thrpt 22213.333 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 55333.419 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 56095.742 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 52299.831 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 12509.281 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 20438.610 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 65049.786 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 18348.607 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 48441.433 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 24748.221 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 18626.118 ops/s -c.g.f.j.stream.Serialization.genson thrpt 32050.374 ops/s -c.g.f.j.stream.Serialization.gson thrpt 12258.445 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 49345.158 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 13760.828 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 2057.414 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 8589.467 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 18806.796 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 5908.209 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 25074.873 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 29475.136 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 3930.016 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 6268.890 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 6894.275 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 9215.607 ops/s +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 86861.218 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 61544.149 ops/s +c.g.f.j.databind.Serialization.boon thrpt 25409.249 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 102580.150 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 90958.980 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 73288.914 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 426.012 ops/s +c.g.f.j.databind.Serialization.genson thrpt 53954.727 ops/s +c.g.f.j.databind.Serialization.gson thrpt 28191.278 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 64376.552 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 65240.421 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 64630.085 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 15396.811 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 22049.523 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 105949.210 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 40973.125 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 72456.540 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 32868.180 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 26124.238 ops/s +c.g.f.j.stream.Serialization.genson thrpt 40196.766 ops/s +c.g.f.j.stream.Serialization.gson thrpt 16314.635 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 64748.244 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 44529.722 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 7317.537 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 10588.912 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 30297.906 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 8884.659 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 38724.557 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 45210.053 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 12708.138 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 8164.498 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 8329.339 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 12869.220 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt index 293efd1..c9b7a43 100644 --- a/output/users-ser-1-100.txt +++ b/output/users-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2000037854275 as seed for Random -5439.169 ops/s -Iteration 1: 6417.441 ops/s +# Warmup Iteration 1: Using SEED=1875342143699 as seed for Random +7441.084 ops/s +Iteration 1: 8717.179 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 6417.441 ops/s + 8717.179 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:00 +# Run progress: 3.03% complete, ETA 00:06:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2013139778824 as seed for Random -4351.346 ops/s -Iteration 1: 5133.326 ops/s +# Warmup Iteration 1: Using SEED=1888225280612 as seed for Random +6248.762 ops/s +Iteration 1: 6870.830 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 5133.326 ops/s + 6870.830 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:46 +# Run progress: 6.06% complete, ETA 00:06:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2026201792732 as seed for Random -1552.921 ops/s -Iteration 1: 1927.845 ops/s +# Warmup Iteration 1: Using SEED=1901107296548 as seed for Random +1673.873 ops/s +Iteration 1: 2399.718 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": - 1927.845 ops/s + 2399.718 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:32 +# Run progress: 9.09% complete, ETA 00:06:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2039253836422 as seed for Random -7047.763 ops/s -Iteration 1: 7654.992 ops/s +# Warmup Iteration 1: Using SEED=1914048080089 as seed for Random +10668.671 ops/s +Iteration 1: 11274.444 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 7654.992 ops/s + 11274.444 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:19 +# Run progress: 12.12% complete, ETA 00:06:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2052348970483 as seed for Random -5949.380 ops/s -Iteration 1: 6177.142 ops/s +# Warmup Iteration 1: Using SEED=1926916827994 as seed for Random +8522.561 ops/s +Iteration 1: 9336.051 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 6177.142 ops/s + 9336.051 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:06 +# Run progress: 15.15% complete, ETA 00:06:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2065351337836 as seed for Random -2327.576 ops/s -Iteration 1: 2704.948 ops/s +# Warmup Iteration 1: Using SEED=1939832224555 as seed for Random +2192.341 ops/s +Iteration 1: 3327.271 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 2704.948 ops/s + 3327.271 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:52 +# Run progress: 18.18% complete, ETA 00:05:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2078336960243 as seed for Random -98.187 ops/s -Iteration 1: 79.153 ops/s +# Warmup Iteration 1: Using SEED=1952751682359 as seed for Random +166.343 ops/s +Iteration 1: 150.161 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 79.153 ops/s + 150.161 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:41 +# Run progress: 21.21% complete, ETA 00:05:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2091888775633 as seed for Random -2360.246 ops/s -Iteration 1: 3773.016 ops/s +# Warmup Iteration 1: Using SEED=1965847376219 as seed for Random +5004.128 ops/s +Iteration 1: 5638.048 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 3773.016 ops/s + 5638.048 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:05:27 +# Run progress: 24.24% complete, ETA 00:05:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2104866898946 as seed for Random -1353.535 ops/s -Iteration 1: 2220.229 ops/s +# Warmup Iteration 1: Using SEED=1978737754741 as seed for Random +2309.405 ops/s +Iteration 1: 2839.711 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 2220.229 ops/s + 2839.711 ops/s # JMH version: 1.33 @@ -217,15 +217,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:05:14 +# Run progress: 27.27% complete, ETA 00:05:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2117868621995 as seed for Random -4810.524 ops/s -Iteration 1: 5323.584 ops/s +# Warmup Iteration 1: Using SEED=1991536928542 as seed for Random +7159.758 ops/s +Iteration 1: 8233.192 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 5323.584 ops/s + 8233.192 ops/s # JMH version: 1.33 @@ -240,15 +240,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:05:01 +# Run progress: 30.30% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2130953723182 as seed for Random -5098.635 ops/s -Iteration 1: 5862.967 ops/s +# Warmup Iteration 1: Using SEED=2004384585649 as seed for Random +6723.037 ops/s +Iteration 1: 7540.825 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 5862.967 ops/s + 7540.825 ops/s # JMH version: 1.33 @@ -263,15 +263,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:47 +# Run progress: 33.33% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2143964460833 as seed for Random -4394.013 ops/s -Iteration 1: 5036.712 ops/s +# Warmup Iteration 1: Using SEED=2017228417390 as seed for Random +6764.616 ops/s +Iteration 1: 7587.042 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 5036.712 ops/s + 7587.042 ops/s # JMH version: 1.33 @@ -286,15 +286,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:34 +# Run progress: 36.36% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2157065710859 as seed for Random -932.216 ops/s -Iteration 1: 1276.628 ops/s +# Warmup Iteration 1: Using SEED=2030049993748 as seed for Random +1155.802 ops/s +Iteration 1: 1522.844 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 1276.628 ops/s + 1522.844 ops/s # JMH version: 1.33 @@ -309,15 +309,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:21 +# Run progress: 39.39% complete, ETA 00:04:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2170078749328 as seed for Random -1556.945 ops/s -Iteration 1: 1849.084 ops/s +# Warmup Iteration 1: Using SEED=2042942418064 as seed for Random +1950.030 ops/s +Iteration 1: 2263.503 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 1849.084 ops/s + 2263.503 ops/s # JMH version: 1.33 @@ -332,15 +332,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:08 +# Run progress: 42.42% complete, ETA 00:04:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2183076970337 as seed for Random -6535.741 ops/s -Iteration 1: 6410.236 ops/s +# Warmup Iteration 1: Using SEED=2055848869691 as seed for Random +8286.105 ops/s +Iteration 1: 10070.420 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 6410.236 ops/s + 10070.420 ops/s # JMH version: 1.33 @@ -355,15 +355,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:55 +# Run progress: 45.45% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2196120353192 as seed for Random -2552.229 ops/s -Iteration 1: 2809.956 ops/s +# Warmup Iteration 1: Using SEED=2068665739759 as seed for Random +3674.359 ops/s +Iteration 1: 4093.168 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 2809.956 ops/s + 4093.168 ops/s # JMH version: 1.33 @@ -378,15 +378,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:42 +# Run progress: 48.48% complete, ETA 00:03:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2209115768660 as seed for Random -3360.215 ops/s -Iteration 1: 4837.863 ops/s +# Warmup Iteration 1: Using SEED=2081489416135 as seed for Random +6157.809 ops/s +Iteration 1: 7491.860 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 4837.863 ops/s + 7491.860 ops/s # JMH version: 1.33 @@ -401,15 +401,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:29 +# Run progress: 51.52% complete, ETA 00:03:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2222233015456 as seed for Random -2339.782 ops/s -Iteration 1: 2652.761 ops/s +# Warmup Iteration 1: Using SEED=2094361604604 as seed for Random +2359.018 ops/s +Iteration 1: 3203.285 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2652.761 ops/s + 3203.285 ops/s # JMH version: 1.33 @@ -424,15 +424,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:16 +# Run progress: 54.55% complete, ETA 00:03:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2235204586987 as seed for Random -1182.305 ops/s -Iteration 1: 2053.571 ops/s +# Warmup Iteration 1: Using SEED=2107174269527 as seed for Random +2137.071 ops/s +Iteration 1: 2571.316 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 2053.571 ops/s + 2571.316 ops/s # JMH version: 1.33 @@ -447,15 +447,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:03:02 +# Run progress: 57.58% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2248228896653 as seed for Random -2266.489 ops/s -Iteration 1: 3391.166 ops/s +# Warmup Iteration 1: Using SEED=2119996165036 as seed for Random +3069.661 ops/s +Iteration 1: 4535.528 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 3391.166 ops/s + 4535.528 ops/s # JMH version: 1.33 @@ -470,15 +470,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:49 +# Run progress: 60.61% complete, ETA 00:02:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2261409582402 as seed for Random -908.372 ops/s -Iteration 1: 1351.197 ops/s +# Warmup Iteration 1: Using SEED=2132910786341 as seed for Random +1414.277 ops/s +Iteration 1: 1726.758 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 1351.197 ops/s + 1726.758 ops/s # JMH version: 1.33 @@ -493,15 +493,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:36 +# Run progress: 63.64% complete, ETA 00:02:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2274514065338 as seed for Random -3269.964 ops/s -Iteration 1: 5237.575 ops/s +# Warmup Iteration 1: Using SEED=2145788463169 as seed for Random +7029.364 ops/s +Iteration 1: 8596.059 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 5237.575 ops/s + 8596.059 ops/s # JMH version: 1.33 @@ -516,15 +516,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:23 +# Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2287593016845 as seed for Random -968.977 ops/s -Iteration 1: 2348.242 ops/s +# Warmup Iteration 1: Using SEED=2158635954108 as seed for Random +3807.997 ops/s +Iteration 1: 5126.476 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 2348.242 ops/s + 5126.476 ops/s # JMH version: 1.33 @@ -539,15 +539,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:10 +# Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2300646399504 as seed for Random -689.008 ops/s -Iteration 1: 1199.423 ops/s +# Warmup Iteration 1: Using SEED=2171470557529 as seed for Random +1068.860 ops/s +Iteration 1: 1600.476 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 1199.423 ops/s + 1600.476 ops/s # JMH version: 1.33 @@ -562,15 +562,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:57 +# Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2313669477644 as seed for Random -491.896 ops/s -Iteration 1: 826.860 ops/s +# Warmup Iteration 1: Using SEED=2184444758887 as seed for Random +799.567 ops/s +Iteration 1: 1054.748 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 826.860 ops/s + 1054.748 ops/s # JMH version: 1.33 @@ -585,15 +585,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:44 +# Run progress: 75.76% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2326784065240 as seed for Random -1011.497 ops/s -Iteration 1: 1748.727 ops/s +# Warmup Iteration 1: Using SEED=2197394446663 as seed for Random +1633.656 ops/s +Iteration 1: 2205.871 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 1748.727 ops/s + 2205.871 ops/s # JMH version: 1.33 @@ -608,15 +608,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:31 +# Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2339763455335 as seed for Random -267.849 ops/s -Iteration 1: 573.550 ops/s +# Warmup Iteration 1: Using SEED=2210234284632 as seed for Random +384.577 ops/s +Iteration 1: 683.174 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 573.550 ops/s + 683.174 ops/s # JMH version: 1.33 @@ -631,15 +631,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2352913322897 as seed for Random -1375.413 ops/s -Iteration 1: 2382.859 ops/s +# Warmup Iteration 1: Using SEED=2223195466910 as seed for Random +2661.408 ops/s +Iteration 1: 3502.817 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 2382.859 ops/s + 3502.817 ops/s # JMH version: 1.33 @@ -654,15 +654,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2365999242893 as seed for Random -1876.426 ops/s -Iteration 1: 3083.968 ops/s +# Warmup Iteration 1: Using SEED=2236016388682 as seed for Random +3709.407 ops/s +Iteration 1: 4890.711 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 3083.968 ops/s + 4890.711 ops/s # JMH version: 1.33 @@ -677,15 +677,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2379105371443 as seed for Random -641.643 ops/s -Iteration 1: 914.190 ops/s +# Warmup Iteration 1: Using SEED=2248856893034 as seed for Random +380.326 ops/s +Iteration 1: 1057.167 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 914.190 ops/s + 1057.167 ops/s # JMH version: 1.33 @@ -700,15 +700,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:39 +# Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2392214892643 as seed for Random -294.370 ops/s -Iteration 1: 442.820 ops/s +# Warmup Iteration 1: Using SEED=2261870804522 as seed for Random +357.094 ops/s +Iteration 1: 569.908 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 442.820 ops/s + 569.908 ops/s # JMH version: 1.33 @@ -723,15 +723,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:26 +# Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2405294967211 as seed for Random -134.597 ops/s -Iteration 1: 141.561 ops/s +# Warmup Iteration 1: Using SEED=2274769875809 as seed for Random +455.347 ops/s +Iteration 1: 773.603 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 141.561 ops/s + 773.603 ops/s # JMH version: 1.33 @@ -746,18 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:13 +# Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2418701136376 as seed for Random -674.574 ops/s -Iteration 1: 835.763 ops/s +# Warmup Iteration 1: Using SEED=2287674468494 as seed for Random +939.868 ops/s +Iteration 1: 990.984 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 835.763 ops/s + 990.984 ops/s -# Run complete. Total time: 00:07:11 +# Run complete. Total time: 00:07:05 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -765,37 +765,37 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 6417.441 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 5133.326 ops/s -c.g.f.j.databind.Serialization.boon thrpt 1927.845 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 7654.992 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 6177.142 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 2704.948 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 79.153 ops/s -c.g.f.j.databind.Serialization.genson thrpt 3773.016 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2220.229 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 5323.584 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 5862.967 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 5036.712 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 1276.628 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 1849.084 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 6410.236 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 2809.956 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 4837.863 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 2652.761 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2053.571 ops/s -c.g.f.j.stream.Serialization.genson thrpt 3391.166 ops/s -c.g.f.j.stream.Serialization.gson thrpt 1351.197 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 5237.575 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 2348.242 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 1199.423 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 826.860 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 1748.727 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 573.550 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 2382.859 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 3083.968 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 914.190 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 442.820 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 141.561 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 835.763 ops/s +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 8717.179 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 6870.830 ops/s +c.g.f.j.databind.Serialization.boon thrpt 2399.718 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 11274.444 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 9336.051 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 3327.271 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 150.161 ops/s +c.g.f.j.databind.Serialization.genson thrpt 5638.048 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2839.711 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 8233.192 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 7540.825 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 7587.042 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 1522.844 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 2263.503 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 10070.420 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 4093.168 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 7491.860 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 3203.285 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2571.316 ops/s +c.g.f.j.stream.Serialization.genson thrpt 4535.528 ops/s +c.g.f.j.stream.Serialization.gson thrpt 1726.758 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 8596.059 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 5126.476 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 1600.476 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 1054.748 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2205.871 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 683.174 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 3502.817 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 4890.711 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 1057.167 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 569.908 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 773.603 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 990.984 ops/s diff --git a/output/users-ser-1-1000.txt b/output/users-ser-1-1000.txt index b560de1..8f1f444 100644 --- a/output/users-ser-1-1000.txt +++ b/output/users-ser-1-1000.txt @@ -1,7 +1,7 @@ # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -10,29 +10,21 @@ # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb -# Run progress: 0.00% complete, ETA 00:13:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301184183709345 as seed for Random -831.585 ops/s -Iteration 1: 827.469 ops/s - -# Run progress: 1.52% complete, ETA 00:14:38 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301197891029871 as seed for Random -876.503 ops/s -Iteration 1: 992.124 ops/s +# Run progress: 0.00% complete, ETA 00:06:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2726988279517 as seed for Random +795.931 ops/s +Iteration 1: 880.782 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 909.796 ops/s + 880.782 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -41,29 +33,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:14:30 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301211413900123 as seed for Random -592.243 ops/s -Iteration 1: 738.225 ops/s - -# Run progress: 4.55% complete, ETA 00:14:16 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301224989678953 as seed for Random -623.679 ops/s -Iteration 1: 712.452 ops/s +# Run progress: 3.03% complete, ETA 00:06:57 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2739966415424 as seed for Random +651.901 ops/s +Iteration 1: 763.238 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 725.338 ops/s + 763.238 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -72,687 +56,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:14:01 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301238497239048 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - - - -# Run progress: 7.58% complete, ETA 00:11:19 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301239936441799 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Run progress: 6.06% complete, ETA 00:06:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2752916651721 as seed for Random +158.696 ops/s +Iteration 1: 184.757 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": + 184.757 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -761,29 +79,21 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:09:32 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301241385484736 as seed for Random -1069.947 ops/s -Iteration 1: 1172.104 ops/s - -# Run progress: 10.61% complete, ETA 00:09:56 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301255092638299 as seed for Random -1142.742 ops/s -Iteration 1: 1251.413 ops/s +# Run progress: 9.09% complete, ETA 00:06:31 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2766106182110 as seed for Random +1016.235 ops/s +Iteration 1: 1085.682 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 1211.758 ops/s + 1085.682 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -792,29 +102,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:10:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301268767566234 as seed for Random -875.177 ops/s -Iteration 1: 849.573 ops/s - -# Run progress: 13.64% complete, ETA 00:10:21 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301282419406293 as seed for Random -868.797 ops/s -Iteration 1: 909.350 ops/s +# Run progress: 12.12% complete, ETA 00:06:17 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2779047994077 as seed for Random +814.564 ops/s +Iteration 1: 862.706 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 879.461 ops/s + 862.706 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -823,29 +125,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:10:25 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301295955482407 as seed for Random -271.296 ops/s -Iteration 1: 298.903 ops/s - -# Run progress: 16.67% complete, ETA 00:10:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301309642460967 as seed for Random -278.050 ops/s -Iteration 1: 273.585 ops/s +# Run progress: 15.15% complete, ETA 00:06:04 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2792037388221 as seed for Random +224.854 ops/s +Iteration 1: 242.997 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 286.244 ops/s + 242.997 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -854,29 +148,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:10:26 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301323259177157 as seed for Random -43.083 ops/s -Iteration 1: 33.322 ops/s - -# Run progress: 19.70% complete, ETA 00:10:28 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301338470453959 as seed for Random -39.504 ops/s -Iteration 1: 36.314 ops/s +# Run progress: 18.18% complete, ETA 00:05:51 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2805086309783 as seed for Random +24.961 ops/s +Iteration 1: 43.374 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 34.818 ops/s + 43.374 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -885,29 +171,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:10:28 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301353479407427 as seed for Random -408.506 ops/s -Iteration 1: 435.844 ops/s - -# Run progress: 22.73% complete, ETA 00:10:22 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301367170300904 as seed for Random -512.897 ops/s -Iteration 1: 494.776 ops/s +# Run progress: 21.21% complete, ETA 00:05:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2818994671892 as seed for Random +426.602 ops/s +Iteration 1: 508.485 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 465.310 ops/s + 508.485 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -916,29 +194,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:10:14 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301380815535337 as seed for Random -302.031 ops/s -Iteration 1: 337.703 ops/s - -# Run progress: 25.76% complete, ETA 00:10:06 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301394379564386 as seed for Random -312.524 ops/s -Iteration 1: 320.302 ops/s +# Run progress: 24.24% complete, ETA 00:05:28 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2831958728180 as seed for Random +229.325 ops/s +Iteration 1: 248.448 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 329.002 ops/s + 248.448 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -947,29 +217,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:09:57 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301408120242253 as seed for Random -712.549 ops/s -Iteration 1: 674.509 ops/s - -# Run progress: 28.79% complete, ETA 00:09:47 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301421698069576 as seed for Random -643.657 ops/s -Iteration 1: 679.899 ops/s +# Run progress: 27.27% complete, ETA 00:05:15 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2845053120196 as seed for Random +656.426 ops/s +Iteration 1: 747.466 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 677.204 ops/s + 747.466 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -978,29 +240,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:09:37 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301435440385751 as seed for Random -714.441 ops/s -Iteration 1: 736.283 ops/s - -# Run progress: 31.82% complete, ETA 00:09:27 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301449192902852 as seed for Random -707.500 ops/s -Iteration 1: 759.821 ops/s +# Run progress: 30.30% complete, ETA 00:05:01 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2858029427593 as seed for Random +633.971 ops/s +Iteration 1: 738.266 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 748.052 ops/s + 738.266 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1009,29 +263,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:09:17 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301462780447673 as seed for Random -585.908 ops/s -Iteration 1: 668.922 ops/s - -# Run progress: 34.85% complete, ETA 00:09:06 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301476316685461 as seed for Random -693.989 ops/s -Iteration 1: 750.684 ops/s +# Run progress: 33.33% complete, ETA 00:04:48 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2870945312597 as seed for Random +643.668 ops/s +Iteration 1: 745.224 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 709.803 ops/s + 745.224 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1040,29 +286,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:08:54 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301489854084738 as seed for Random -114.060 ops/s -Iteration 1: 120.384 ops/s - -# Run progress: 37.88% complete, ETA 00:08:44 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301503817682799 as seed for Random -112.943 ops/s -Iteration 1: 122.455 ops/s +# Run progress: 36.36% complete, ETA 00:04:34 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2883875503007 as seed for Random +111.602 ops/s +Iteration 1: 159.191 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 121.420 ops/s + 159.191 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1071,29 +309,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:08:33 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301517730778167 as seed for Random -251.265 ops/s -Iteration 1: 284.830 ops/s - -# Run progress: 40.91% complete, ETA 00:08:21 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301531902548740 as seed for Random -262.399 ops/s -Iteration 1: 267.615 ops/s +# Run progress: 39.39% complete, ETA 00:04:21 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2897056107458 as seed for Random +199.313 ops/s +Iteration 1: 220.071 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 276.222 ops/s + 220.071 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -1102,1975 +332,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:08:10 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301546005380365 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - - - -# Run progress: 43.94% complete, ETA 00:07:43 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301547657585869 as seed for Random - - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @46f7f36a - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354) - at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) - at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) - at java.base/java.lang.reflect.Method.setAccessible(Method.java:193) - at javassist.util.proxy.SecurityActions.setAccessible(SecurityActions.java:159) - at javassist.util.proxy.DefineClassHelper$JavaOther.defineClass(DefineClassHelper.java:213) - at javassist.util.proxy.DefineClassHelper$Java11.defineClass(DefineClassHelper.java:52) - at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:260) - at javassist.ClassPool.toClass(ClassPool.java:1240) - at javassist.ClassPool.toClass(ClassPool.java:1098) - at javassist.ClassPool.toClass(ClassPool.java:1056) - at javassist.CtClass.toClass(CtClass.java:1298) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:29) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_thrpt_jmhStub(Serialization_jsoniter_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 37 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -com.jsoniter.spi.JsonException: failed to generate encoder for: ParameterizedTypeImpl{actualTypeArguments=[class java.lang.String], ownerType=null, rawType=java.util.List} with [class java.lang.String], exception: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) -public static void encode_(java.lang.Object obj, com.jsoniter.output.JsonStream stream) throws java.io.IOException { -java.util.List list = (java.util.List)obj; -int size = list.size(); -if (size == 0) { return; } -java.lang.Object e = list.get(0); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -for (int i = 1; i < size; i++) { -stream.write(','); -e = list.get(i); -if (e == null) { stream.writeNull(); } else { -stream.writeVal((java.lang.String)e); -} -} -} - - at com.jsoniter.output.Codegen.gen(Codegen.java:110) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:269) - at com.jsoniter.output.CodegenImplArray.genList(CodegenImplArray.java:113) - at com.jsoniter.output.CodegenImplArray.genCollection(CodegenImplArray.java:30) - at com.jsoniter.output.Codegen.genSource(Codegen.java:222) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.CodegenImplNative.genWriteOp(CodegenImplNative.java:295) - at com.jsoniter.output.CodegenImplObject.genField(CodegenImplObject.java:117) - at com.jsoniter.output.CodegenImplObject.genObject(CodegenImplObject.java:22) - at com.jsoniter.output.Codegen.genSource(Codegen.java:227) - at com.jsoniter.output.Codegen.gen(Codegen.java:98) - at com.jsoniter.output.Codegen.getEncoder(Codegen.java:49) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) -Caused by: java.lang.RuntimeException: jsoniter_codegen.cfg9223372034806973682.encoder.java.util.List_java.lang.String: frozen class (cannot edit) - at javassist.ClassPool.checkNotFrozen(ClassPool.java:595) - at javassist.ClassPool.makeClass(ClassPool.java:837) - at javassist.ClassPool.makeClass(ClassPool.java:814) - at com.jsoniter.output.DynamicCodegen.gen(DynamicCodegen.java:16) - at com.jsoniter.output.Codegen.gen(Codegen.java:102) - ... 36 more - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) - -java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(Object, com.jsoniter.output.JsonStream)" because "encoder" is null - at com.jsoniter.output.Codegen$1.encode(Codegen.java:139) - at com.jsoniter.output.JsonStream.writeVal(JsonStream.java:362) - at com.jsoniter.output.JsonStream.serialize(JsonStream.java:408) - at com.github.fabienrenaud.jjb.databind.Serialization.jsoniter(Serialization.java:169) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_jsoniter_jmhTest.jsoniter_Throughput(Serialization_jsoniter_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:568) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) - at java.base/java.lang.Thread.run(Thread.java:833) +# Run progress: 42.42% complete, ETA 00:04:08 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2910146151654 as seed for Random +981.413 ops/s +Iteration 1: 962.966 ops/s +Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": + 962.966 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3079,29 +355,21 @@ java.lang.NullPointerException: Cannot invoke "com.jsoniter.spi.Encoder.encode(O # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:07:19 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301549935571531 as seed for Random -298.342 ops/s -Iteration 1: 314.959 ops/s - -# Run progress: 46.97% complete, ETA 00:07:08 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301563572665277 as seed for Random -333.018 ops/s -Iteration 1: 370.007 ops/s +# Run progress: 45.45% complete, ETA 00:03:55 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2923075813812 as seed for Random +361.384 ops/s +Iteration 1: 400.306 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 342.483 ops/s + 400.306 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3110,29 +378,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:06:57 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301577100674568 as seed for Random -831.314 ops/s -Iteration 1: 910.820 ops/s - -# Run progress: 50.00% complete, ETA 00:06:46 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301590536871028 as seed for Random -801.215 ops/s -Iteration 1: 949.311 ops/s +# Run progress: 48.48% complete, ETA 00:03:42 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2936064583726 as seed for Random +560.950 ops/s +Iteration 1: 676.190 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 930.066 ops/s + 676.190 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3141,29 +401,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:06:35 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301604040846398 as seed for Random -352.010 ops/s -Iteration 1: 360.281 ops/s - -# Run progress: 53.03% complete, ETA 00:06:23 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301617603161413 as seed for Random -342.163 ops/s -Iteration 1: 348.718 ops/s +# Run progress: 51.52% complete, ETA 00:03:29 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2949036809339 as seed for Random +247.836 ops/s +Iteration 1: 285.330 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 354.500 ops/s + 285.330 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3172,29 +424,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:06:12 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301631154439899 as seed for Random -252.904 ops/s -Iteration 1: 265.355 ops/s - -# Run progress: 56.06% complete, ETA 00:06:01 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301645089629861 as seed for Random -221.628 ops/s -Iteration 1: 279.031 ops/s +# Run progress: 54.55% complete, ETA 00:03:15 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2962109876738 as seed for Random +251.682 ops/s +Iteration 1: 286.940 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 272.193 ops/s + 286.940 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3203,29 +447,21 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:05:49 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301658844151861 as seed for Random -400.464 ops/s -Iteration 1: 443.448 ops/s - -# Run progress: 59.09% complete, ETA 00:05:38 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301672491899206 as seed for Random -364.768 ops/s -Iteration 1: 483.011 ops/s +# Run progress: 57.58% complete, ETA 00:03:02 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2975144410087 as seed for Random +344.560 ops/s +Iteration 1: 471.966 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 463.230 ops/s + 471.966 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3234,29 +470,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:05:26 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301686257023843 as seed for Random -141.758 ops/s -Iteration 1: 165.342 ops/s - -# Run progress: 62.12% complete, ETA 00:05:14 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301700098980814 as seed for Random -130.975 ops/s -Iteration 1: 160.355 ops/s +# Run progress: 60.61% complete, ETA 00:02:49 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=2988197936695 as seed for Random +147.675 ops/s +Iteration 1: 161.070 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 162.848 ops/s + 161.070 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3265,29 +493,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:05:02 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301713938396476 as seed for Random -860.570 ops/s -Iteration 1: 886.305 ops/s - -# Run progress: 65.15% complete, ETA 00:04:50 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301727439600586 as seed for Random -852.476 ops/s -Iteration 1: 859.356 ops/s +# Run progress: 63.64% complete, ETA 00:02:36 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3001453353539 as seed for Random +505.263 ops/s +Iteration 1: 631.885 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 872.831 ops/s + 631.885 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3296,29 +516,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:04:38 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301741058205528 as seed for Random -663.353 ops/s -Iteration 1: 699.244 ops/s - -# Run progress: 68.18% complete, ETA 00:04:26 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301754660255276 as seed for Random -643.756 ops/s -Iteration 1: 895.039 ops/s +# Run progress: 66.67% complete, ETA 00:02:23 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3014416422426 as seed for Random +400.748 ops/s +Iteration 1: 584.937 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 797.142 ops/s + 584.937 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3327,29 +539,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:04:13 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301767967336241 as seed for Random -135.071 ops/s -Iteration 1: 143.177 ops/s - -# Run progress: 71.21% complete, ETA 00:04:01 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301781465174630 as seed for Random -132.281 ops/s -Iteration 1: 129.930 ops/s +# Run progress: 69.70% complete, ETA 00:02:10 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3027359379351 as seed for Random +116.932 ops/s +Iteration 1: 155.509 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 136.553 ops/s + 155.509 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3358,29 +562,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:03:49 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301795151415245 as seed for Random -89.198 ops/s -Iteration 1: 96.127 ops/s - -# Run progress: 74.24% complete, ETA 00:03:36 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301808954422383 as seed for Random -91.749 ops/s -Iteration 1: 92.032 ops/s +# Run progress: 72.73% complete, ETA 00:01:57 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3040498864235 as seed for Random +54.051 ops/s +Iteration 1: 83.730 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 94.080 ops/s + 83.730 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3389,29 +585,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:03:24 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301822754541480 as seed for Random -351.481 ops/s -Iteration 1: 420.432 ops/s - -# Run progress: 77.27% complete, ETA 00:03:11 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301836264848501 as seed for Random -374.495 ops/s -Iteration 1: 441.894 ops/s +# Run progress: 75.76% complete, ETA 00:01:44 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3053907876160 as seed for Random +145.391 ops/s +Iteration 1: 190.343 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 431.163 ops/s + 190.343 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3420,29 +608,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:02:59 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301849682333488 as seed for Random -105.245 ops/s -Iteration 1: 121.631 ops/s - -# Run progress: 80.30% complete, ETA 00:02:46 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301863340526242 as seed for Random -115.395 ops/s -Iteration 1: 119.138 ops/s +# Run progress: 78.79% complete, ETA 00:01:31 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3067030407217 as seed for Random +31.703 ops/s +Iteration 1: 41.378 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 120.385 ops/s + 41.378 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3451,29 +631,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:02:34 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301877325640649 as seed for Random -444.476 ops/s -Iteration 1: 473.533 ops/s - -# Run progress: 83.33% complete, ETA 00:02:21 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301890660521723 as seed for Random -486.041 ops/s -Iteration 1: 513.414 ops/s +# Run progress: 81.82% complete, ETA 00:01:18 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3081293156688 as seed for Random +294.411 ops/s +Iteration 1: 348.102 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 493.473 ops/s + 348.102 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3482,29 +654,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:02:08 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301903881556870 as seed for Random -638.607 ops/s -Iteration 1: 720.942 ops/s - -# Run progress: 86.36% complete, ETA 00:01:55 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301917093885293 as seed for Random -634.765 ops/s -Iteration 1: 697.784 ops/s +# Run progress: 84.85% complete, ETA 00:01:05 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3094369951062 as seed for Random +142.253 ops/s +Iteration 1: 141.392 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 709.363 ops/s + 141.392 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3513,29 +677,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:01:42 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301930275467746 as seed for Random -150.869 ops/s -Iteration 1: 171.022 ops/s - -# Run progress: 89.39% complete, ETA 00:01:30 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301943826455828 as seed for Random -142.638 ops/s -Iteration 1: 170.312 ops/s +# Run progress: 87.88% complete, ETA 00:00:52 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3107522163965 as seed for Random +88.313 ops/s +Iteration 1: 110.852 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 170.667 ops/s + 110.852 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3544,29 +700,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:01:17 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301957286623625 as seed for Random -6.395 ops/s -Iteration 1: 6.372 ops/s - -# Run progress: 92.42% complete, ETA 00:01:05 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=301979016774491 as seed for Random -6.316 ops/s -Iteration 1: 6.446 ops/s +# Run progress: 90.91% complete, ETA 00:00:39 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3120842525976 as seed for Random +12.905 ops/s +Iteration 1: 14.042 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 6.409 ops/s + 14.042 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3575,29 +723,21 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:52 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302000875990129 as seed for Random -84.054 ops/s -Iteration 1: 88.700 ops/s - -# Run progress: 95.45% complete, ETA 00:00:39 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302014538075026 as seed for Random -86.096 ops/s -Iteration 1: 95.876 ops/s +# Run progress: 93.94% complete, ETA 00:00:26 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3137574028670 as seed for Random +44.690 ops/s +Iteration 1: 66.016 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 92.288 ops/s + 66.016 ops/s # JMH version: 1.33 -# VM version: JDK 17.0.4, OpenJDK 64-Bit Server VM, 17.0.4+8-jvmci-22.2-b06 -# VM invoker: /home/mintozzy/.sdkman/candidates/java/22.2.r17-grl/bin/java -# VM options: -XX:ThreadPriorityPolicy=1 -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCIProduct -XX:-UnlockExperimentalVMOptions -Xms2g -Xmx2g +# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 +# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each # Measurement: 1 iterations, 2 s each @@ -3606,26 +746,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java -# Run progress: 96.97% complete, ETA 00:00:26 -# Fork: 1 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302028269412899 as seed for Random -129.326 ops/s -Iteration 1: 140.039 ops/s - -# Run progress: 98.48% complete, ETA 00:00:13 -# Fork: 2 of 2 -OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. -# Warmup Iteration 1: Using SEED=302041836953811 as seed for Random -132.312 ops/s -Iteration 1: 137.720 ops/s +# Run progress: 96.97% complete, ETA 00:00:13 +# Fork: 1 of 1 +# Warmup Iteration 1: Using SEED=3151247184631 as seed for Random +60.276 ops/s +Iteration 1: 71.293 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 138.880 ops/s + 71.293 ops/s -# Run complete. Total time: 00:14:31 +# Run complete. Total time: 00:07:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -3634,34 +766,36 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 2 909.796 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 2 725.338 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 2 1211.758 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 2 879.461 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 2 286.244 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 2 34.818 ops/s -c.g.f.j.databind.Serialization.genson thrpt 2 465.310 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2 329.002 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 2 677.204 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 2 748.052 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 2 709.803 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 2 121.420 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 2 276.222 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 2 342.483 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 2 930.066 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 2 354.500 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2 272.193 ops/s -c.g.f.j.stream.Serialization.genson thrpt 2 463.230 ops/s -c.g.f.j.stream.Serialization.gson thrpt 2 162.848 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 2 872.831 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 2 797.142 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 2 136.553 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 2 94.080 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2 431.163 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 2 120.385 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 2 493.473 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 2 709.363 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 2 170.667 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 2 6.409 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 2 92.288 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 2 138.880 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 880.782 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 763.238 ops/s +c.g.f.j.databind.Serialization.boon thrpt 184.757 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 1085.682 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 862.706 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 242.997 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 43.374 ops/s +c.g.f.j.databind.Serialization.genson thrpt 508.485 ops/s +c.g.f.j.databind.Serialization.gson thrpt 248.448 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 747.466 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 738.266 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 745.224 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 159.191 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 220.071 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 962.966 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 400.306 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 676.190 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 285.330 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 286.940 ops/s +c.g.f.j.stream.Serialization.genson thrpt 471.966 ops/s +c.g.f.j.stream.Serialization.gson thrpt 161.070 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 631.885 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 584.937 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 155.509 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 83.730 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 190.343 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 41.378 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 348.102 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 141.392 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 110.852 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 14.042 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 66.016 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 71.293 ops/s From e9a9f58b6005b6eabd5874f2a9ab7ce43c102152 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=B6zkan=20pakdil?= Date: Fri, 28 Oct 2022 06:11:56 +0100 Subject: [PATCH 23/42] Update gradle.yml jdk 11 --- .github/workflows/gradle.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index a8bb843..ecc9bda 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -19,10 +19,10 @@ jobs: - uses: actions/checkout@v3 with: token: ${{ secrets.TOKEN_GIT }} - - name: Set up JDK 8 + - name: Set up JDK 11 uses: actions/setup-java@v3 with: - java-version: '8' + java-version: '11' distribution: 'temurin' - name: Build with Gradle uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1 From e1ff64bd791e6e026edfa13b344c2f65b6adefa4 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Fri, 28 Oct 2022 06:38:19 +0000 Subject: [PATCH 24/42] result adding back to repo [skip ci] another test --- output/clients-deser-1-1.txt | 250 ++++----- output/clients-deser-1-10.txt | 250 ++++----- output/clients-deser-1-100.txt | 250 ++++----- output/clients-deser-1-1000.txt | 250 ++++----- output/clients-ser-1-1.txt | 250 ++++----- output/clients-ser-1-10.txt | 252 +++++----- output/clients-ser-1-100.txt | 252 +++++----- output/clients-ser-1-1000.txt | 250 ++++----- output/users-deser-1-1.txt | 836 ++++++++++++++++++++---------- output/users-deser-1-10.txt | 836 ++++++++++++++++++++---------- output/users-deser-1-100.txt | 830 ++++++++++++++++++++---------- output/users-deser-1-1000.txt | 848 +++++++++++++++++++++---------- output/users-ser-1-1.txt | 861 +++++++++++++++++++++---------- output/users-ser-1-10.txt | 855 +++++++++++++++++++++---------- output/users-ser-1-100.txt | 853 +++++++++++++++++++++---------- output/users-ser-1-1000.txt | 865 ++++++++++++++++++++++---------- 16 files changed, 5760 insertions(+), 3028 deletions(-) diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt index 369745a..d72db4f 100644 --- a/output/clients-deser-1-1.txt +++ b/output/clients-deser-1-1.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3794516140068 as seed for Random -279702.511 ops/s -Iteration 1: 399793.039 ops/s +# Warmup Iteration 1: Using SEED=3779381581334 as seed for Random +169432.910 ops/s +Iteration 1: 337935.082 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 399793.039 ops/s + 337935.082 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:00 +# Run progress: 6.67% complete, ETA 00:03:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3807386739337 as seed for Random -174247.805 ops/s -Iteration 1: 305890.025 ops/s +# Warmup Iteration 1: Using SEED=3792757184620 as seed for Random +68827.654 ops/s +Iteration 1: 192037.741 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 305890.025 ops/s + 192037.741 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:47 +# Run progress: 13.33% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3820298010951 as seed for Random -427863.429 ops/s -Iteration 1: 626063.680 ops/s +# Warmup Iteration 1: Using SEED=3806121917004 as seed for Random +145027.454 ops/s +Iteration 1: 434128.116 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 626063.680 ops/s + 434128.116 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:34 +# Run progress: 20.00% complete, ETA 00:02:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3833190010604 as seed for Random -527433.923 ops/s -Iteration 1: 598312.166 ops/s +# Warmup Iteration 1: Using SEED=3819468777406 as seed for Random +238770.927 ops/s +Iteration 1: 407743.945 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 598312.166 ops/s + 407743.945 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:21 +# Run progress: 26.67% complete, ETA 00:02:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3846091821659 as seed for Random -44401.365 ops/s -Iteration 1: 166915.991 ops/s +# Warmup Iteration 1: Using SEED=3832814488836 as seed for Random +25197.480 ops/s +Iteration 1: 55297.793 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 166915.991 ops/s + 55297.793 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3858989654160 as seed for Random -29836.487 ops/s -Iteration 1: 57431.087 ops/s +# Warmup Iteration 1: Using SEED=3846151593224 as seed for Random +14817.126 ops/s +Iteration 1: 27636.012 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 57431.087 ops/s + 27636.012 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:02:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3871992156165 as seed for Random -77135.395 ops/s -Iteration 1: 217666.310 ops/s +# Warmup Iteration 1: Using SEED=3859477051488 as seed for Random +42485.098 ops/s +Iteration 1: 90172.052 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 217666.310 ops/s + 90172.052 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3885016804317 as seed for Random -21994.406 ops/s -Iteration 1: 23908.257 ops/s +# Warmup Iteration 1: Using SEED=3872879814629 as seed for Random +78903.581 ops/s +Iteration 1: 154147.118 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 23908.257 ops/s + 154147.118 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3897947784425 as seed for Random -180507.821 ops/s -Iteration 1: 317300.169 ops/s +# Warmup Iteration 1: Using SEED=3886242412948 as seed for Random +33146.197 ops/s +Iteration 1: 33831.606 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 317300.169 ops/s + 33831.606 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3910822664507 as seed for Random -72519.019 ops/s -Iteration 1: 107148.252 ops/s +# Warmup Iteration 1: Using SEED=3899650432333 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +99612.585 ops/s +Iteration 1: 197796.298 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 107148.252 ops/s + 197796.298 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +245,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3923728777892 as seed for Random -240319.237 ops/s -Iteration 1: 373944.132 ops/s +# Warmup Iteration 1: Using SEED=3912991714282 as seed for Random +56760.359 ops/s +Iteration 1: 101711.915 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 373944.132 ops/s + 101711.915 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +268,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3936625805695 as seed for Random -73807.268 ops/s -Iteration 1: 131312.902 ops/s +# Warmup Iteration 1: Using SEED=3926361570157 as seed for Random +57042.108 ops/s +Iteration 1: 113676.752 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 131312.902 ops/s + 113676.752 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +291,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3949504676833 as seed for Random -361303.116 ops/s -Iteration 1: 389023.909 ops/s +# Warmup Iteration 1: Using SEED=3939764399912 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +125989.803 ops/s +Iteration 1: 283555.158 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 389023.909 ops/s + 283555.158 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +319,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:25 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3962381593692 as seed for Random -76166.528 ops/s -Iteration 1: 144656.758 ops/s +# Warmup Iteration 1: Using SEED=3953239407385 as seed for Random +39063.105 ops/s +Iteration 1: 97800.530 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 144656.758 ops/s + 97800.530 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,18 +342,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3975317336681 as seed for Random -117843.143 ops/s -Iteration 1: 177089.410 ops/s +# Warmup Iteration 1: Using SEED=3966652081165 as seed for Random +23328.430 ops/s +Iteration 1: 47244.600 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 177089.410 ops/s + 47244.600 ops/s -# Run complete. Total time: 00:03:13 +# Run complete. Total time: 00:03:20 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 399793.039 ops/s -Deserialization.avajejsonb_jackson thrpt 305890.025 ops/s -Deserialization.dsljson thrpt 626063.680 ops/s -Deserialization.dsljson_reflection thrpt 598312.166 ops/s -Deserialization.fastjson thrpt 166915.991 ops/s -Deserialization.flexjson thrpt 57431.087 ops/s -Deserialization.genson thrpt 217666.310 ops/s -Deserialization.gson thrpt 23908.257 ops/s -Deserialization.jackson thrpt 317300.169 ops/s -Deserialization.jackson_afterburner thrpt 107148.252 ops/s -Deserialization.jackson_blackbird thrpt 373944.132 ops/s -Deserialization.jodd thrpt 131312.902 ops/s -Deserialization.jsoniter thrpt 389023.909 ops/s -Deserialization.logansquare thrpt 144656.758 ops/s -Deserialization.moshi thrpt 177089.410 ops/s +Deserialization.avajejsonb thrpt 337935.082 ops/s +Deserialization.avajejsonb_jackson thrpt 192037.741 ops/s +Deserialization.dsljson thrpt 434128.116 ops/s +Deserialization.dsljson_reflection thrpt 407743.945 ops/s +Deserialization.fastjson thrpt 55297.793 ops/s +Deserialization.flexjson thrpt 27636.012 ops/s +Deserialization.genson thrpt 90172.052 ops/s +Deserialization.gson thrpt 154147.118 ops/s +Deserialization.jackson thrpt 33831.606 ops/s +Deserialization.jackson_afterburner thrpt 197796.298 ops/s +Deserialization.jackson_blackbird thrpt 101711.915 ops/s +Deserialization.jodd thrpt 113676.752 ops/s +Deserialization.jsoniter thrpt 283555.158 ops/s +Deserialization.logansquare thrpt 97800.530 ops/s +Deserialization.moshi thrpt 47244.600 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt index 2ad842f..5298232 100644 --- a/output/clients-deser-1-10.txt +++ b/output/clients-deser-1-10.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4182902257274 as seed for Random -8582.054 ops/s -Iteration 1: 15636.901 ops/s +# Warmup Iteration 1: Using SEED=4182249346739 as seed for Random +6017.955 ops/s +Iteration 1: 13274.896 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 15636.901 ops/s + 13274.896 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:02 +# Run progress: 6.67% complete, ETA 00:03:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4195878841551 as seed for Random -6837.477 ops/s -Iteration 1: 12796.070 ops/s +# Warmup Iteration 1: Using SEED=4195681898195 as seed for Random +3016.048 ops/s +Iteration 1: 5033.687 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 12796.070 ops/s + 5033.687 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4208776162282 as seed for Random -41833.170 ops/s -Iteration 1: 67279.472 ops/s +# Warmup Iteration 1: Using SEED=4209126946000 as seed for Random +29184.449 ops/s +Iteration 1: 56440.070 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 67279.472 ops/s + 56440.070 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4221674732830 as seed for Random -44417.839 ops/s -Iteration 1: 57757.669 ops/s +# Warmup Iteration 1: Using SEED=4222460961865 as seed for Random +19510.246 ops/s +Iteration 1: 42783.941 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 57757.669 ops/s + 42783.941 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4234569202321 as seed for Random -4683.848 ops/s -Iteration 1: 10197.363 ops/s +# Warmup Iteration 1: Using SEED=4235861220294 as seed for Random +2994.879 ops/s +Iteration 1: 6381.676 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 10197.363 ops/s + 6381.676 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4247509610347 as seed for Random -1963.199 ops/s -Iteration 1: 3978.185 ops/s +# Warmup Iteration 1: Using SEED=4249291816631 as seed for Random +862.841 ops/s +Iteration 1: 1500.054 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 3978.185 ops/s + 1500.054 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:02:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4260559008344 as seed for Random -7806.730 ops/s -Iteration 1: 14280.720 ops/s +# Warmup Iteration 1: Using SEED=4262680251529 as seed for Random +2347.984 ops/s +Iteration 1: 4221.483 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 14280.720 ops/s + 4221.483 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4273494772820 as seed for Random -5255.501 ops/s -Iteration 1: 10564.065 ops/s +# Warmup Iteration 1: Using SEED=4275998665119 as seed for Random +2830.754 ops/s +Iteration 1: 8118.416 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 10564.065 ops/s + 8118.416 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4286411027070 as seed for Random -4507.303 ops/s -Iteration 1: 9017.630 ops/s +# Warmup Iteration 1: Using SEED=4289422584463 as seed for Random +2430.072 ops/s +Iteration 1: 3319.377 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 9017.630 ops/s + 3319.377 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4299320132153 as seed for Random -6147.622 ops/s -Iteration 1: 12722.488 ops/s +# Warmup Iteration 1: Using SEED=4302766257439 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +3648.068 ops/s +Iteration 1: 5386.486 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 12722.488 ops/s + 5386.486 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +245,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4312196797615 as seed for Random -5910.322 ops/s -Iteration 1: 11220.477 ops/s +# Warmup Iteration 1: Using SEED=4316153629622 as seed for Random +2973.342 ops/s +Iteration 1: 4429.806 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 11220.477 ops/s + 4429.806 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +268,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4325068510197 as seed for Random -5132.890 ops/s -Iteration 1: 12300.349 ops/s +# Warmup Iteration 1: Using SEED=4329474425893 as seed for Random +2769.335 ops/s +Iteration 1: 4908.409 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 12300.349 ops/s + 4908.409 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +291,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4337946448164 as seed for Random -13446.784 ops/s -Iteration 1: 16005.885 ops/s +# Warmup Iteration 1: Using SEED=4342816156933 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +2152.094 ops/s +Iteration 1: 3060.697 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 16005.885 ops/s + 3060.697 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +319,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:25 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4350792435837 as seed for Random -5903.132 ops/s -Iteration 1: 11206.913 ops/s +# Warmup Iteration 1: Using SEED=4356126560423 as seed for Random +2827.788 ops/s +Iteration 1: 5536.272 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 11206.913 ops/s + 5536.272 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,18 +342,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4363729795479 as seed for Random -5501.446 ops/s -Iteration 1: 8665.258 ops/s +# Warmup Iteration 1: Using SEED=4369474603247 as seed for Random +3388.042 ops/s +Iteration 1: 4842.781 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 8665.258 ops/s + 4842.781 ops/s -# Run complete. Total time: 00:03:13 +# Run complete. Total time: 00:03:20 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 15636.901 ops/s -Deserialization.avajejsonb_jackson thrpt 12796.070 ops/s -Deserialization.dsljson thrpt 67279.472 ops/s -Deserialization.dsljson_reflection thrpt 57757.669 ops/s -Deserialization.fastjson thrpt 10197.363 ops/s -Deserialization.flexjson thrpt 3978.185 ops/s -Deserialization.genson thrpt 14280.720 ops/s -Deserialization.gson thrpt 10564.065 ops/s -Deserialization.jackson thrpt 9017.630 ops/s -Deserialization.jackson_afterburner thrpt 12722.488 ops/s -Deserialization.jackson_blackbird thrpt 11220.477 ops/s -Deserialization.jodd thrpt 12300.349 ops/s -Deserialization.jsoniter thrpt 16005.885 ops/s -Deserialization.logansquare thrpt 11206.913 ops/s -Deserialization.moshi thrpt 8665.258 ops/s +Deserialization.avajejsonb thrpt 13274.896 ops/s +Deserialization.avajejsonb_jackson thrpt 5033.687 ops/s +Deserialization.dsljson thrpt 56440.070 ops/s +Deserialization.dsljson_reflection thrpt 42783.941 ops/s +Deserialization.fastjson thrpt 6381.676 ops/s +Deserialization.flexjson thrpt 1500.054 ops/s +Deserialization.genson thrpt 4221.483 ops/s +Deserialization.gson thrpt 8118.416 ops/s +Deserialization.jackson thrpt 3319.377 ops/s +Deserialization.jackson_afterburner thrpt 5386.486 ops/s +Deserialization.jackson_blackbird thrpt 4429.806 ops/s +Deserialization.jodd thrpt 4908.409 ops/s +Deserialization.jsoniter thrpt 3060.697 ops/s +Deserialization.logansquare thrpt 5536.272 ops/s +Deserialization.moshi thrpt 4842.781 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt index 90b45d1..58e6656 100644 --- a/output/clients-deser-1-100.txt +++ b/output/clients-deser-1-100.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4572210359121 as seed for Random -802.014 ops/s -Iteration 1: 1498.197 ops/s +# Warmup Iteration 1: Using SEED=4586125264306 as seed for Random +468.900 ops/s +Iteration 1: 835.286 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 1498.197 ops/s + 835.286 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:02 +# Run progress: 6.67% complete, ETA 00:03:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4585232060255 as seed for Random -711.367 ops/s -Iteration 1: 1189.898 ops/s +# Warmup Iteration 1: Using SEED=4599557711620 as seed for Random +434.236 ops/s +Iteration 1: 788.290 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 1189.898 ops/s + 788.290 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:49 +# Run progress: 13.33% complete, ETA 00:02:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4598228177938 as seed for Random -5346.451 ops/s -Iteration 1: 7177.188 ops/s +# Warmup Iteration 1: Using SEED=4613098109652 as seed for Random +2546.070 ops/s +Iteration 1: 5578.940 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 7177.188 ops/s + 5578.940 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4611138505851 as seed for Random -5233.317 ops/s -Iteration 1: 6034.425 ops/s +# Warmup Iteration 1: Using SEED=4626436073868 as seed for Random +2938.329 ops/s +Iteration 1: 4426.430 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 6034.425 ops/s + 4426.430 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4624043667354 as seed for Random -552.545 ops/s -Iteration 1: 1139.307 ops/s +# Warmup Iteration 1: Using SEED=4639909610750 as seed for Random +275.347 ops/s +Iteration 1: 538.766 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 1139.307 ops/s + 538.766 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4637031665964 as seed for Random -162.424 ops/s -Iteration 1: 351.392 ops/s +# Warmup Iteration 1: Using SEED=4653314517370 as seed for Random +98.905 ops/s +Iteration 1: 185.448 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 351.392 ops/s + 185.448 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:02:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4650070826752 as seed for Random -674.688 ops/s -Iteration 1: 1274.127 ops/s +# Warmup Iteration 1: Using SEED=4667040541400 as seed for Random +372.952 ops/s +Iteration 1: 929.003 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 1274.127 ops/s + 929.003 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4662940943987 as seed for Random -208.059 ops/s -Iteration 1: 463.695 ops/s +# Warmup Iteration 1: Using SEED=4680530422997 as seed for Random +306.504 ops/s +Iteration 1: 398.137 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 463.695 ops/s + 398.137 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4675978343360 as seed for Random -483.114 ops/s -Iteration 1: 911.285 ops/s +# Warmup Iteration 1: Using SEED=4693977845100 as seed for Random +217.187 ops/s +Iteration 1: 332.428 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 911.285 ops/s + 332.428 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4688920563121 as seed for Random -620.217 ops/s -Iteration 1: 1064.809 ops/s +# Warmup Iteration 1: Using SEED=4707575921712 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +246.456 ops/s +Iteration 1: 435.541 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 1064.809 ops/s + 435.541 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +245,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4701892859270 as seed for Random -629.407 ops/s -Iteration 1: 1134.170 ops/s +# Warmup Iteration 1: Using SEED=4721054893130 as seed for Random +334.505 ops/s +Iteration 1: 447.439 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 1134.170 ops/s + 447.439 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +268,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4714840379759 as seed for Random -499.145 ops/s -Iteration 1: 813.698 ops/s +# Warmup Iteration 1: Using SEED=4734552575937 as seed for Random +219.547 ops/s +Iteration 1: 502.220 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 813.698 ops/s + 502.220 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +291,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4727795480516 as seed for Random -365.972 ops/s -Iteration 1: 878.970 ops/s +# Warmup Iteration 1: Using SEED=4748005857152 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +297.230 ops/s +Iteration 1: 548.190 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 878.970 ops/s + 548.190 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +319,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:25 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4740785483744 as seed for Random -518.232 ops/s -Iteration 1: 1092.417 ops/s +# Warmup Iteration 1: Using SEED=4761478802046 as seed for Random +218.578 ops/s +Iteration 1: 396.599 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 1092.417 ops/s + 396.599 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,18 +342,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4753735683372 as seed for Random -609.093 ops/s -Iteration 1: 1045.754 ops/s +# Warmup Iteration 1: Using SEED=4774881231140 as seed for Random +268.226 ops/s +Iteration 1: 443.888 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 1045.754 ops/s + 443.888 ops/s -# Run complete. Total time: 00:03:14 +# Run complete. Total time: 00:03:22 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 1498.197 ops/s -Deserialization.avajejsonb_jackson thrpt 1189.898 ops/s -Deserialization.dsljson thrpt 7177.188 ops/s -Deserialization.dsljson_reflection thrpt 6034.425 ops/s -Deserialization.fastjson thrpt 1139.307 ops/s -Deserialization.flexjson thrpt 351.392 ops/s -Deserialization.genson thrpt 1274.127 ops/s -Deserialization.gson thrpt 463.695 ops/s -Deserialization.jackson thrpt 911.285 ops/s -Deserialization.jackson_afterburner thrpt 1064.809 ops/s -Deserialization.jackson_blackbird thrpt 1134.170 ops/s -Deserialization.jodd thrpt 813.698 ops/s -Deserialization.jsoniter thrpt 878.970 ops/s -Deserialization.logansquare thrpt 1092.417 ops/s -Deserialization.moshi thrpt 1045.754 ops/s +Deserialization.avajejsonb thrpt 835.286 ops/s +Deserialization.avajejsonb_jackson thrpt 788.290 ops/s +Deserialization.dsljson thrpt 5578.940 ops/s +Deserialization.dsljson_reflection thrpt 4426.430 ops/s +Deserialization.fastjson thrpt 538.766 ops/s +Deserialization.flexjson thrpt 185.448 ops/s +Deserialization.genson thrpt 929.003 ops/s +Deserialization.gson thrpt 398.137 ops/s +Deserialization.jackson thrpt 332.428 ops/s +Deserialization.jackson_afterburner thrpt 435.541 ops/s +Deserialization.jackson_blackbird thrpt 447.439 ops/s +Deserialization.jodd thrpt 502.220 ops/s +Deserialization.jsoniter thrpt 548.190 ops/s +Deserialization.logansquare thrpt 396.599 ops/s +Deserialization.moshi thrpt 443.888 ops/s diff --git a/output/clients-deser-1-1000.txt b/output/clients-deser-1-1000.txt index e9fed86..8bf0bbf 100644 --- a/output/clients-deser-1-1000.txt +++ b/output/clients-deser-1-1000.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4966748905107 as seed for Random -97.471 ops/s -Iteration 1: 141.313 ops/s +# Warmup Iteration 1: Using SEED=4997669349521 as seed for Random +64.491 ops/s +Iteration 1: 112.798 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 141.313 ops/s + 112.798 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:06 +# Run progress: 6.67% complete, ETA 00:03:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4980035247255 as seed for Random -70.612 ops/s -Iteration 1: 123.448 ops/s +# Warmup Iteration 1: Using SEED=5011547475708 as seed for Random +36.986 ops/s +Iteration 1: 101.819 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 123.448 ops/s + 101.819 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:53 +# Run progress: 13.33% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4993404020020 as seed for Random -487.801 ops/s -Iteration 1: 656.883 ops/s +# Warmup Iteration 1: Using SEED=5025673694935 as seed for Random +310.552 ops/s +Iteration 1: 540.098 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 656.883 ops/s + 540.098 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:39 +# Run progress: 20.00% complete, ETA 00:02:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5006504936009 as seed for Random -382.252 ops/s -Iteration 1: 505.277 ops/s +# Warmup Iteration 1: Using SEED=5039251046128 as seed for Random +260.253 ops/s +Iteration 1: 450.541 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 505.277 ops/s + 450.541 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5019631483412 as seed for Random -42.065 ops/s -Iteration 1: 88.785 ops/s +# Warmup Iteration 1: Using SEED=5052890857524 as seed for Random +30.528 ops/s +Iteration 1: 57.387 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 88.785 ops/s + 57.387 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:13 +# Run progress: 33.33% complete, ETA 00:02:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5033272057548 as seed for Random -17.713 ops/s -Iteration 1: 30.971 ops/s +# Warmup Iteration 1: Using SEED=5067346597032 as seed for Random +8.476 ops/s +Iteration 1: 15.089 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 30.971 ops/s + 15.089 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:02:01 +# Run progress: 40.00% complete, ETA 00:02:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5048021653827 as seed for Random -74.573 ops/s -Iteration 1: 122.646 ops/s +# Warmup Iteration 1: Using SEED=5084019826654 as seed for Random +33.767 ops/s +Iteration 1: 94.349 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 122.646 ops/s + 94.349 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:48 +# Run progress: 46.67% complete, ETA 00:01:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5061402742085 as seed for Random -17.388 ops/s -Iteration 1: 106.003 ops/s +# Warmup Iteration 1: Using SEED=5098024325156 as seed for Random +31.341 ops/s +Iteration 1: 74.524 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 106.003 ops/s + 74.524 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:35 +# Run progress: 53.33% complete, ETA 00:01:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5075873406158 as seed for Random -48.235 ops/s -Iteration 1: 72.663 ops/s +# Warmup Iteration 1: Using SEED=5112109030038 as seed for Random +26.077 ops/s +Iteration 1: 38.369 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 72.663 ops/s + 38.369 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:21 +# Run progress: 60.00% complete, ETA 00:01:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5089458519173 as seed for Random -65.339 ops/s -Iteration 1: 106.401 ops/s +# Warmup Iteration 1: Using SEED=5126695450905 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +41.338 ops/s +Iteration 1: 71.410 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 106.401 ops/s + 71.410 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +245,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:08 +# Run progress: 66.67% complete, ETA 00:01:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5102900202729 as seed for Random -54.245 ops/s -Iteration 1: 104.182 ops/s +# Warmup Iteration 1: Using SEED=5141060888472 as seed for Random +40.482 ops/s +Iteration 1: 78.640 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 104.182 ops/s + 78.640 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +268,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:54 +# Run progress: 73.33% complete, ETA 00:00:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5116353039168 as seed for Random -46.307 ops/s -Iteration 1: 91.268 ops/s +# Warmup Iteration 1: Using SEED=5155361929862 as seed for Random +33.796 ops/s +Iteration 1: 64.073 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 91.268 ops/s + 64.073 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +291,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:40 +# Run progress: 80.00% complete, ETA 00:00:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5129859273504 as seed for Random -125.906 ops/s -Iteration 1: 148.229 ops/s +# Warmup Iteration 1: Using SEED=5169551430253 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +39.513 ops/s +Iteration 1: 112.291 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 148.229 ops/s + 112.291 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +319,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:27 +# Run progress: 86.67% complete, ETA 00:00:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5143185605731 as seed for Random -43.454 ops/s -Iteration 1: 110.829 ops/s +# Warmup Iteration 1: Using SEED=5183758556840 as seed for Random +38.349 ops/s +Iteration 1: 47.088 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 110.829 ops/s + 47.088 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,18 +342,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:13 +# Run progress: 93.33% complete, ETA 00:00:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5156748765086 as seed for Random -55.120 ops/s -Iteration 1: 102.022 ops/s +# Warmup Iteration 1: Using SEED=5198256842239 as seed for Random +29.642 ops/s +Iteration 1: 76.449 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 102.022 ops/s + 76.449 ops/s -# Run complete. Total time: 00:03:23 +# Run complete. Total time: 00:03:34 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 141.313 ops/s -Deserialization.avajejsonb_jackson thrpt 123.448 ops/s -Deserialization.dsljson thrpt 656.883 ops/s -Deserialization.dsljson_reflection thrpt 505.277 ops/s -Deserialization.fastjson thrpt 88.785 ops/s -Deserialization.flexjson thrpt 30.971 ops/s -Deserialization.genson thrpt 122.646 ops/s -Deserialization.gson thrpt 106.003 ops/s -Deserialization.jackson thrpt 72.663 ops/s -Deserialization.jackson_afterburner thrpt 106.401 ops/s -Deserialization.jackson_blackbird thrpt 104.182 ops/s -Deserialization.jodd thrpt 91.268 ops/s -Deserialization.jsoniter thrpt 148.229 ops/s -Deserialization.logansquare thrpt 110.829 ops/s -Deserialization.moshi thrpt 102.022 ops/s +Deserialization.avajejsonb thrpt 112.798 ops/s +Deserialization.avajejsonb_jackson thrpt 101.819 ops/s +Deserialization.dsljson thrpt 540.098 ops/s +Deserialization.dsljson_reflection thrpt 450.541 ops/s +Deserialization.fastjson thrpt 57.387 ops/s +Deserialization.flexjson thrpt 15.089 ops/s +Deserialization.genson thrpt 94.349 ops/s +Deserialization.gson thrpt 74.524 ops/s +Deserialization.jackson thrpt 38.369 ops/s +Deserialization.jackson_afterburner thrpt 71.410 ops/s +Deserialization.jackson_blackbird thrpt 78.640 ops/s +Deserialization.jodd thrpt 64.073 ops/s +Deserialization.jsoniter thrpt 112.291 ops/s +Deserialization.logansquare thrpt 47.088 ops/s +Deserialization.moshi thrpt 76.449 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt index 4f408ec..49d4183 100644 --- a/output/clients-ser-1-1.txt +++ b/output/clients-ser-1-1.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3600519180711 as seed for Random -340784.764 ops/s -Iteration 1: 421185.988 ops/s +# Warmup Iteration 1: Using SEED=3578391870372 as seed for Random +260912.062 ops/s +Iteration 1: 399410.143 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 421185.988 ops/s + 399410.143 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:02 +# Run progress: 6.67% complete, ETA 00:03:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3613493236828 as seed for Random -382461.685 ops/s -Iteration 1: 467755.523 ops/s +# Warmup Iteration 1: Using SEED=3591747466630 as seed for Random +210371.403 ops/s +Iteration 1: 322305.043 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 467755.523 ops/s + 322305.043 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:49 +# Run progress: 13.33% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3626495570245 as seed for Random -852865.740 ops/s -Iteration 1: 973187.604 ops/s +# Warmup Iteration 1: Using SEED=3605047373461 as seed for Random +552488.145 ops/s +Iteration 1: 693834.882 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 973187.604 ops/s + 693834.882 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3639397584924 as seed for Random -759500.685 ops/s -Iteration 1: 810430.636 ops/s +# Warmup Iteration 1: Using SEED=3618349196330 as seed for Random +454447.897 ops/s +Iteration 1: 539507.745 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 810430.636 ops/s + 539507.745 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3652273428280 as seed for Random -213617.546 ops/s -Iteration 1: 366439.384 ops/s +# Warmup Iteration 1: Using SEED=3631664102416 as seed for Random +96520.369 ops/s +Iteration 1: 338885.092 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 366439.384 ops/s + 338885.092 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3665141836022 as seed for Random -3001.774 ops/s -Iteration 1: 1636.475 ops/s +# Warmup Iteration 1: Using SEED=3644981701162 as seed for Random +2191.161 ops/s +Iteration 1: 1319.129 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1636.475 ops/s + 1319.129 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:02:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3678051673110 as seed for Random -68046.290 ops/s -Iteration 1: 262135.607 ops/s +# Warmup Iteration 1: Using SEED=3658347023541 as seed for Random +143355.276 ops/s +Iteration 1: 194368.812 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 262135.607 ops/s + 194368.812 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3690980971609 as seed for Random -139214.188 ops/s -Iteration 1: 196160.171 ops/s +# Warmup Iteration 1: Using SEED=3671712813628 as seed for Random +101516.041 ops/s +Iteration 1: 128332.791 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 196160.171 ops/s + 128332.791 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3703823935773 as seed for Random -375097.859 ops/s -Iteration 1: 461213.701 ops/s +# Warmup Iteration 1: Using SEED=3685120892190 as seed for Random +126063.991 ops/s +Iteration 1: 262659.012 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 461213.701 ops/s + 262659.012 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3716720585571 as seed for Random -484246.050 ops/s -Iteration 1: 620648.028 ops/s +# Warmup Iteration 1: Using SEED=3698494353303 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +134101.746 ops/s +Iteration 1: 256018.136 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 620648.028 ops/s + 256018.136 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +245,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3729599658133 as seed for Random -322277.127 ops/s -Iteration 1: 394194.848 ops/s +# Warmup Iteration 1: Using SEED=3711849127446 as seed for Random +157662.330 ops/s +Iteration 1: 238203.657 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 394194.848 ops/s + 238203.657 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +268,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3742477795168 as seed for Random -81762.380 ops/s -Iteration 1: 139344.680 ops/s +# Warmup Iteration 1: Using SEED=3725247704513 as seed for Random +25149.739 ops/s +Iteration 1: 45022.226 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 139344.680 ops/s + 45022.226 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +291,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3755354747332 as seed for Random -432650.495 ops/s -Iteration 1: 520873.711 ops/s +# Warmup Iteration 1: Using SEED=3738599243189 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +388575.779 ops/s +Iteration 1: 471978.846 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 520873.711 ops/s + 471978.846 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +319,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:25 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3768231357791 as seed for Random -122763.289 ops/s -Iteration 1: 127656.503 ops/s +# Warmup Iteration 1: Using SEED=3751945379002 as seed for Random +246376.707 ops/s +Iteration 1: 394507.124 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 127656.503 ops/s + 394507.124 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,18 +342,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3781101564787 as seed for Random -208750.504 ops/s -Iteration 1: 247820.502 ops/s +# Warmup Iteration 1: Using SEED=3765245418546 as seed for Random +147921.155 ops/s +Iteration 1: 197596.887 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 247820.502 ops/s + 197596.887 ops/s -# Run complete. Total time: 00:03:13 +# Run complete. Total time: 00:03:20 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -352,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 421185.988 ops/s -Serialization.avajejsonb_jackson thrpt 467755.523 ops/s -Serialization.dsljson thrpt 973187.604 ops/s -Serialization.dsljson_reflection thrpt 810430.636 ops/s -Serialization.fastjson thrpt 366439.384 ops/s -Serialization.flexjson thrpt 1636.475 ops/s -Serialization.genson thrpt 262135.607 ops/s -Serialization.gson thrpt 196160.171 ops/s -Serialization.jackson thrpt 461213.701 ops/s -Serialization.jackson_afterburner thrpt 620648.028 ops/s -Serialization.jackson_blackbird thrpt 394194.848 ops/s -Serialization.jodd thrpt 139344.680 ops/s -Serialization.jsoniter thrpt 520873.711 ops/s -Serialization.logansquare thrpt 127656.503 ops/s -Serialization.moshi thrpt 247820.502 ops/s +Serialization.avajejsonb thrpt 399410.143 ops/s +Serialization.avajejsonb_jackson thrpt 322305.043 ops/s +Serialization.dsljson thrpt 693834.882 ops/s +Serialization.dsljson_reflection thrpt 539507.745 ops/s +Serialization.fastjson thrpt 338885.092 ops/s +Serialization.flexjson thrpt 1319.129 ops/s +Serialization.genson thrpt 194368.812 ops/s +Serialization.gson thrpt 128332.791 ops/s +Serialization.jackson thrpt 262659.012 ops/s +Serialization.jackson_afterburner thrpt 256018.136 ops/s +Serialization.jackson_blackbird thrpt 238203.657 ops/s +Serialization.jodd thrpt 45022.226 ops/s +Serialization.jsoniter thrpt 471978.846 ops/s +Serialization.logansquare thrpt 394507.124 ops/s +Serialization.moshi thrpt 197596.887 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt index 0b0f0d2..e975c8d 100644 --- a/output/clients-ser-1-10.txt +++ b/output/clients-ser-1-10.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3988744626840 as seed for Random -36075.813 ops/s -Iteration 1: 41651.897 ops/s +# Warmup Iteration 1: Using SEED=3980764013002 as seed for Random +20435.193 ops/s +Iteration 1: 32844.705 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 41651.897 ops/s + 32844.705 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4001654095267 as seed for Random -28911.062 ops/s -Iteration 1: 35293.139 ops/s +# Warmup Iteration 1: Using SEED=3994085652048 as seed for Random +18718.768 ops/s +Iteration 1: 27759.383 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 35293.139 ops/s + 27759.383 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4014578835779 as seed for Random -99906.222 ops/s -Iteration 1: 109795.963 ops/s +# Warmup Iteration 1: Using SEED=4007490317048 as seed for Random +57547.529 ops/s +Iteration 1: 82143.452 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 109795.963 ops/s + 82143.452 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4027503688973 as seed for Random -85412.964 ops/s -Iteration 1: 93441.056 ops/s +# Warmup Iteration 1: Using SEED=4020865638698 as seed for Random +39731.844 ops/s +Iteration 1: 57137.854 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 93441.056 ops/s + 57137.854 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4040433461449 as seed for Random -7242.607 ops/s -Iteration 1: 30005.708 ops/s +# Warmup Iteration 1: Using SEED=4034193061073 as seed for Random +9539.179 ops/s +Iteration 1: 18494.694 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 30005.708 ops/s + 18494.694 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4053267260714 as seed for Random -758.053 ops/s -Iteration 1: 471.702 ops/s +# Warmup Iteration 1: Using SEED=4047564912346 as seed for Random +491.448 ops/s +Iteration 1: 326.298 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 471.702 ops/s + 326.298 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:56 +# Run progress: 40.00% complete, ETA 00:02:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4066247239678 as seed for Random -17341.651 ops/s -Iteration 1: 27144.436 ops/s +# Warmup Iteration 1: Using SEED=4061133690565 as seed for Random +15983.481 ops/s +Iteration 1: 22394.639 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 27144.436 ops/s + 22394.639 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:43 +# Run progress: 46.67% complete, ETA 00:01:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4079141771601 as seed for Random -15416.836 ops/s -Iteration 1: 19848.171 ops/s +# Warmup Iteration 1: Using SEED=4074461948082 as seed for Random +4538.727 ops/s +Iteration 1: 14225.561 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 19848.171 ops/s + 14225.561 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:30 +# Run progress: 53.33% complete, ETA 00:01:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4092070263170 as seed for Random -23435.250 ops/s -Iteration 1: 29401.346 ops/s +# Warmup Iteration 1: Using SEED=4087844659822 as seed for Random +13452.880 ops/s +Iteration 1: 22436.382 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 29401.346 ops/s + 22436.382 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4105027452248 as seed for Random -26255.934 ops/s -Iteration 1: 33411.506 ops/s +# Warmup Iteration 1: Using SEED=4101147450599 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +12561.783 ops/s +Iteration 1: 24179.482 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 33411.506 ops/s + 24179.482 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +245,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4117902163476 as seed for Random -29335.246 ops/s -Iteration 1: 37180.223 ops/s +# Warmup Iteration 1: Using SEED=4114486333964 as seed for Random +15267.631 ops/s +Iteration 1: 23050.463 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 37180.223 ops/s + 23050.463 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +268,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4130817934029 as seed for Random -8640.512 ops/s -Iteration 1: 13615.947 ops/s +# Warmup Iteration 1: Using SEED=4127816383791 as seed for Random +3504.421 ops/s +Iteration 1: 9663.520 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 13615.947 ops/s + 9663.520 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +291,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4143668118335 as seed for Random -33674.364 ops/s -Iteration 1: 41081.021 ops/s +# Warmup Iteration 1: Using SEED=4141153817882 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +21419.751 ops/s +Iteration 1: 30822.636 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 41081.021 ops/s + 30822.636 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +319,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:25 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4156554652797 as seed for Random -26568.147 ops/s -Iteration 1: 36761.384 ops/s +# Warmup Iteration 1: Using SEED=4154496630427 as seed for Random +15315.073 ops/s +Iteration 1: 31653.122 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 36761.384 ops/s + 31653.122 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,18 +342,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4169438631175 as seed for Random -14521.479 ops/s -Iteration 1: 21637.982 ops/s +# Warmup Iteration 1: Using SEED=4167971563630 as seed for Random +8118.134 ops/s +Iteration 1: 16482.783 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 21637.982 ops/s + 16482.783 ops/s -# Run complete. Total time: 00:03:13 +# Run complete. Total time: 00:03:20 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -351,19 +361,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 41651.897 ops/s -Serialization.avajejsonb_jackson thrpt 35293.139 ops/s -Serialization.dsljson thrpt 109795.963 ops/s -Serialization.dsljson_reflection thrpt 93441.056 ops/s -Serialization.fastjson thrpt 30005.708 ops/s -Serialization.flexjson thrpt 471.702 ops/s -Serialization.genson thrpt 27144.436 ops/s -Serialization.gson thrpt 19848.171 ops/s -Serialization.jackson thrpt 29401.346 ops/s -Serialization.jackson_afterburner thrpt 33411.506 ops/s -Serialization.jackson_blackbird thrpt 37180.223 ops/s -Serialization.jodd thrpt 13615.947 ops/s -Serialization.jsoniter thrpt 41081.021 ops/s -Serialization.logansquare thrpt 36761.384 ops/s -Serialization.moshi thrpt 21637.982 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 32844.705 ops/s +Serialization.avajejsonb_jackson thrpt 27759.383 ops/s +Serialization.dsljson thrpt 82143.452 ops/s +Serialization.dsljson_reflection thrpt 57137.854 ops/s +Serialization.fastjson thrpt 18494.694 ops/s +Serialization.flexjson thrpt 326.298 ops/s +Serialization.genson thrpt 22394.639 ops/s +Serialization.gson thrpt 14225.561 ops/s +Serialization.jackson thrpt 22436.382 ops/s +Serialization.jackson_afterburner thrpt 24179.482 ops/s +Serialization.jackson_blackbird thrpt 23050.463 ops/s +Serialization.jodd thrpt 9663.520 ops/s +Serialization.jsoniter thrpt 30822.636 ops/s +Serialization.logansquare thrpt 31653.122 ops/s +Serialization.moshi thrpt 16482.783 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt index 61e461c..d82830a 100644 --- a/output/clients-ser-1-100.txt +++ b/output/clients-ser-1-100.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4377230596115 as seed for Random -3300.556 ops/s -Iteration 1: 4001.146 ops/s +# Warmup Iteration 1: Using SEED=4383602076335 as seed for Random +2292.546 ops/s +Iteration 1: 3136.320 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 4001.146 ops/s + 3136.320 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:01 +# Run progress: 6.67% complete, ETA 00:03:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4390162778664 as seed for Random -2921.576 ops/s -Iteration 1: 3577.195 ops/s +# Warmup Iteration 1: Using SEED=4397070658865 as seed for Random +1705.041 ops/s +Iteration 1: 2442.874 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 3577.195 ops/s + 2442.874 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:48 +# Run progress: 13.33% complete, ETA 00:02:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4403069421037 as seed for Random -11160.576 ops/s -Iteration 1: 12469.674 ops/s +# Warmup Iteration 1: Using SEED=4410603951337 as seed for Random +5006.120 ops/s +Iteration 1: 7621.618 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 12469.674 ops/s + 7621.618 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:35 +# Run progress: 20.00% complete, ETA 00:02:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4416174497638 as seed for Random -9505.648 ops/s -Iteration 1: 9845.909 ops/s +# Warmup Iteration 1: Using SEED=4423994421166 as seed for Random +5509.401 ops/s +Iteration 1: 6162.601 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 9845.909 ops/s + 6162.601 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:22 +# Run progress: 26.67% complete, ETA 00:02:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4429064949544 as seed for Random -1394.255 ops/s -Iteration 1: 1860.121 ops/s +# Warmup Iteration 1: Using SEED=4437405957661 as seed for Random +1245.548 ops/s +Iteration 1: 2065.263 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 1860.121 ops/s + 2065.263 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:09 +# Run progress: 33.33% complete, ETA 00:02:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4442049308323 as seed for Random -194.794 ops/s -Iteration 1: 139.472 ops/s +# Warmup Iteration 1: Using SEED=4450839010874 as seed for Random +109.085 ops/s +Iteration 1: 96.926 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 139.472 ops/s + 96.926 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:57 +# Run progress: 40.00% complete, ETA 00:02:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4455266271283 as seed for Random -1705.124 ops/s -Iteration 1: 2862.696 ops/s +# Warmup Iteration 1: Using SEED=4464669326264 as seed for Random +1853.245 ops/s +Iteration 1: 2428.365 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 2862.696 ops/s + 2428.365 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:44 +# Run progress: 46.67% complete, ETA 00:01:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4468244211979 as seed for Random -1247.187 ops/s -Iteration 1: 1870.633 ops/s +# Warmup Iteration 1: Using SEED=4478077643452 as seed for Random +693.990 ops/s +Iteration 1: 1270.357 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1870.633 ops/s + 1270.357 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:31 +# Run progress: 53.33% complete, ETA 00:01:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4481214749664 as seed for Random -2231.664 ops/s -Iteration 1: 2772.802 ops/s +# Warmup Iteration 1: Using SEED=4491504978572 as seed for Random +1526.155 ops/s +Iteration 1: 2307.451 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 2772.802 ops/s + 2307.451 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:17 +# Run progress: 60.00% complete, ETA 00:01:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4494121905970 as seed for Random -2222.997 ops/s -Iteration 1: 2778.911 ops/s +# Warmup Iteration 1: Using SEED=4504922285883 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +1513.528 ops/s +Iteration 1: 2367.124 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 2778.911 ops/s + 2367.124 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +245,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:04 +# Run progress: 66.67% complete, ETA 00:01:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4507018087816 as seed for Random -2089.194 ops/s -Iteration 1: 2678.892 ops/s +# Warmup Iteration 1: Using SEED=4518343757871 as seed for Random +1539.550 ops/s +Iteration 1: 2192.493 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 2678.892 ops/s + 2192.493 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +268,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:51 +# Run progress: 73.33% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4519948840325 as seed for Random -893.107 ops/s -Iteration 1: 1376.657 ops/s +# Warmup Iteration 1: Using SEED=4531717451287 as seed for Random +337.453 ops/s +Iteration 1: 962.091 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 1376.657 ops/s + 962.091 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +291,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:38 +# Run progress: 80.00% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4532859437343 as seed for Random -2882.904 ops/s -Iteration 1: 3963.645 ops/s +# Warmup Iteration 1: Using SEED=4545106603643 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +2245.718 ops/s +Iteration 1: 3137.093 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 3963.645 ops/s + 3137.093 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +319,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:25 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4545750201922 as seed for Random -2909.431 ops/s -Iteration 1: 3540.712 ops/s +# Warmup Iteration 1: Using SEED=4558495047549 as seed for Random +1330.093 ops/s +Iteration 1: 2943.671 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 3540.712 ops/s + 2943.671 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,18 +342,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 93.33% complete, ETA 00:00:12 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4558699100290 as seed for Random -1807.356 ops/s -Iteration 1: 2247.081 ops/s +# Warmup Iteration 1: Using SEED=4571865076818 as seed for Random +998.331 ops/s +Iteration 1: 1678.639 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2247.081 ops/s + 1678.639 ops/s -# Run complete. Total time: 00:03:14 +# Run complete. Total time: 00:03:21 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -351,19 +361,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 4001.146 ops/s -Serialization.avajejsonb_jackson thrpt 3577.195 ops/s -Serialization.dsljson thrpt 12469.674 ops/s -Serialization.dsljson_reflection thrpt 9845.909 ops/s -Serialization.fastjson thrpt 1860.121 ops/s -Serialization.flexjson thrpt 139.472 ops/s -Serialization.genson thrpt 2862.696 ops/s -Serialization.gson thrpt 1870.633 ops/s -Serialization.jackson thrpt 2772.802 ops/s -Serialization.jackson_afterburner thrpt 2778.911 ops/s -Serialization.jackson_blackbird thrpt 2678.892 ops/s -Serialization.jodd thrpt 1376.657 ops/s -Serialization.jsoniter thrpt 3963.645 ops/s -Serialization.logansquare thrpt 3540.712 ops/s -Serialization.moshi thrpt 2247.081 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 3136.320 ops/s +Serialization.avajejsonb_jackson thrpt 2442.874 ops/s +Serialization.dsljson thrpt 7621.618 ops/s +Serialization.dsljson_reflection thrpt 6162.601 ops/s +Serialization.fastjson thrpt 2065.263 ops/s +Serialization.flexjson thrpt 96.926 ops/s +Serialization.genson thrpt 2428.365 ops/s +Serialization.gson thrpt 1270.357 ops/s +Serialization.jackson thrpt 2307.451 ops/s +Serialization.jackson_afterburner thrpt 2367.124 ops/s +Serialization.jackson_blackbird thrpt 2192.493 ops/s +Serialization.jodd thrpt 962.091 ops/s +Serialization.jsoniter thrpt 3137.093 ops/s +Serialization.logansquare thrpt 2943.671 ops/s +Serialization.moshi thrpt 1678.639 ops/s diff --git a/output/clients-ser-1-1000.txt b/output/clients-ser-1-1000.txt index 4a01c49..d95fd35 100644 --- a/output/clients-ser-1-1000.txt +++ b/output/clients-ser-1-1000.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4767312774491 as seed for Random -336.108 ops/s -Iteration 1: 372.696 ops/s +# Warmup Iteration 1: Using SEED=4789174516296 as seed for Random +232.673 ops/s +Iteration 1: 309.178 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 372.696 ops/s + 309.178 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:06 +# Run progress: 6.67% complete, ETA 00:03:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4780550380435 as seed for Random -254.403 ops/s -Iteration 1: 353.880 ops/s +# Warmup Iteration 1: Using SEED=4802800619605 as seed for Random +169.324 ops/s +Iteration 1: 245.463 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 353.880 ops/s + 245.463 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:51 +# Run progress: 13.33% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4793681521905 as seed for Random -1048.431 ops/s -Iteration 1: 1163.171 ops/s +# Warmup Iteration 1: Using SEED=4816538083344 as seed for Random +530.345 ops/s +Iteration 1: 753.456 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 1163.171 ops/s + 753.456 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +79,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:37 +# Run progress: 20.00% complete, ETA 00:02:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4806730469864 as seed for Random -845.421 ops/s -Iteration 1: 922.328 ops/s +# Warmup Iteration 1: Using SEED=4830062674855 as seed for Random +464.549 ops/s +Iteration 1: 567.725 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 922.328 ops/s + 567.725 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +102,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:24 +# Run progress: 26.67% complete, ETA 00:02:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4819754254153 as seed for Random -113.493 ops/s -Iteration 1: 164.584 ops/s +# Warmup Iteration 1: Using SEED=4843665871930 as seed for Random +90.063 ops/s +Iteration 1: 132.383 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 164.584 ops/s + 132.383 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +125,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:11 +# Run progress: 33.33% complete, ETA 00:02:16 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4833107739401 as seed for Random -20.257 ops/s -Iteration 1: 41.978 ops/s +# Warmup Iteration 1: Using SEED=4857541922555 as seed for Random +19.665 ops/s +Iteration 1: 31.474 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 41.978 ops/s + 31.474 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +148,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:02:00 +# Run progress: 40.00% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4847441839878 as seed for Random -210.645 ops/s -Iteration 1: 258.088 ops/s +# Warmup Iteration 1: Using SEED=4872776771023 as seed for Random +168.931 ops/s +Iteration 1: 223.905 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 258.088 ops/s + 223.905 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +171,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:46 +# Run progress: 46.67% complete, ETA 00:01:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4860603339908 as seed for Random -142.982 ops/s -Iteration 1: 169.792 ops/s +# Warmup Iteration 1: Using SEED=4886433710445 as seed for Random +84.171 ops/s +Iteration 1: 122.896 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 169.792 ops/s + 122.896 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +194,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:33 +# Run progress: 53.33% complete, ETA 00:01:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4873858952129 as seed for Random -226.555 ops/s -Iteration 1: 273.343 ops/s +# Warmup Iteration 1: Using SEED=4900420180860 as seed for Random +132.883 ops/s +Iteration 1: 209.574 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 273.343 ops/s + 209.574 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +217,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4886968881265 as seed for Random -215.146 ops/s -Iteration 1: 268.938 ops/s +# Warmup Iteration 1: Using SEED=4914153056171 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +121.466 ops/s +Iteration 1: 189.130 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 268.938 ops/s + 189.130 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +245,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4900141433737 as seed for Random -217.902 ops/s -Iteration 1: 271.491 ops/s +# Warmup Iteration 1: Using SEED=4927812745928 as seed for Random +105.907 ops/s +Iteration 1: 172.511 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 271.491 ops/s + 172.511 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +268,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:53 +# Run progress: 73.33% complete, ETA 00:00:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4913248480900 as seed for Random -92.588 ops/s -Iteration 1: 128.398 ops/s +# Warmup Iteration 1: Using SEED=4941635059369 as seed for Random +38.453 ops/s +Iteration 1: 91.212 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 128.398 ops/s + 91.212 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +291,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:39 +# Run progress: 80.00% complete, ETA 00:00:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4926605658721 as seed for Random -378.299 ops/s -Iteration 1: 388.699 ops/s +# Warmup Iteration 1: Using SEED=4955663177082 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +220.881 ops/s +Iteration 1: 326.951 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 388.699 ops/s + 326.951 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +319,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:26 +# Run progress: 86.67% complete, ETA 00:00:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4939681053921 as seed for Random -268.845 ops/s -Iteration 1: 356.802 ops/s +# Warmup Iteration 1: Using SEED=4969343202121 as seed for Random +176.003 ops/s +Iteration 1: 261.614 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 356.802 ops/s + 261.614 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -334,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4952926060338 as seed for Random -181.000 ops/s -Iteration 1: 204.655 ops/s +# Warmup Iteration 1: Using SEED=4982999166724 as seed for Random +122.102 ops/s +Iteration 1: 164.984 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 204.655 ops/s + 164.984 ops/s -# Run complete. Total time: 00:03:18 +# Run complete. Total time: 00:03:27 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -351,19 +361,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 372.696 ops/s -Serialization.avajejsonb_jackson thrpt 353.880 ops/s -Serialization.dsljson thrpt 1163.171 ops/s -Serialization.dsljson_reflection thrpt 922.328 ops/s -Serialization.fastjson thrpt 164.584 ops/s -Serialization.flexjson thrpt 41.978 ops/s -Serialization.genson thrpt 258.088 ops/s -Serialization.gson thrpt 169.792 ops/s -Serialization.jackson thrpt 273.343 ops/s -Serialization.jackson_afterburner thrpt 268.938 ops/s -Serialization.jackson_blackbird thrpt 271.491 ops/s -Serialization.jodd thrpt 128.398 ops/s -Serialization.jsoniter thrpt 388.699 ops/s -Serialization.logansquare thrpt 356.802 ops/s -Serialization.moshi thrpt 204.655 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 309.178 ops/s +Serialization.avajejsonb_jackson thrpt 245.463 ops/s +Serialization.dsljson thrpt 753.456 ops/s +Serialization.dsljson_reflection thrpt 567.725 ops/s +Serialization.fastjson thrpt 132.383 ops/s +Serialization.flexjson thrpt 31.474 ops/s +Serialization.genson thrpt 223.905 ops/s +Serialization.gson thrpt 122.896 ops/s +Serialization.jackson thrpt 209.574 ops/s +Serialization.jackson_afterburner thrpt 189.130 ops/s +Serialization.jackson_blackbird thrpt 172.511 ops/s +Serialization.jodd thrpt 91.212 ops/s +Serialization.jsoniter thrpt 326.951 ops/s +Serialization.logansquare thrpt 261.614 ops/s +Serialization.moshi thrpt 164.984 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt index 866e850..0ee60fd 100644 --- a/output/users-deser-1-1.txt +++ b/output/users-deser-1-1.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=600997978578 as seed for Random -473550.280 ops/s -Iteration 1: 594909.027 ops/s +# Warmup Iteration 1: Using SEED=529993268425 as seed for Random +294576.367 ops/s +Iteration 1: 459163.113 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 594909.027 ops/s + 459163.113 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:56 +# Run progress: 3.03% complete, ETA 00:07:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=614008667384 as seed for Random -300897.049 ops/s -Iteration 1: 388606.652 ops/s +# Warmup Iteration 1: Using SEED=543265131870 as seed for Random +146597.109 ops/s +Iteration 1: 244401.207 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 388606.652 ops/s + 244401.207 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,328 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:41 +# Run progress: 6.06% complete, ETA 00:06:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=626858170367 as seed for Random -159747.516 ops/s -Iteration 1: 180658.481 ops/s +# Warmup Iteration 1: Using SEED=556615781226 as seed for Random + + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) -Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": - 180658.481 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +387,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:27 +# Run progress: 9.09% complete, ETA 00:04:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=639716730976 as seed for Random -538799.181 ops/s -Iteration 1: 689593.010 ops/s +# Warmup Iteration 1: Using SEED=557836962796 as seed for Random +324845.501 ops/s +Iteration 1: 507154.626 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 689593.010 ops/s + 507154.626 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +410,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:14 +# Run progress: 12.12% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=652631785215 as seed for Random -476466.537 ops/s -Iteration 1: 550991.463 ops/s +# Warmup Iteration 1: Using SEED=571210645223 as seed for Random +368803.256 ops/s +Iteration 1: 461716.761 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 550991.463 ops/s + 461716.761 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +433,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:01 +# Run progress: 15.15% complete, ETA 00:05:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=665452735632 as seed for Random -147098.492 ops/s -Iteration 1: 238422.683 ops/s +# Warmup Iteration 1: Using SEED=584524939788 as seed for Random +42430.576 ops/s +Iteration 1: 153718.263 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 238422.683 ops/s + 153718.263 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +456,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:48 +# Run progress: 18.18% complete, ETA 00:05:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=678323185009 as seed for Random -26157.052 ops/s -Iteration 1: 65351.686 ops/s +# Warmup Iteration 1: Using SEED=597794446693 as seed for Random +13345.256 ops/s +Iteration 1: 37973.542 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 65351.686 ops/s + 37973.542 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +479,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:35 +# Run progress: 21.21% complete, ETA 00:05:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=691176466329 as seed for Random -228127.504 ops/s -Iteration 1: 272671.648 ops/s +# Warmup Iteration 1: Using SEED=611179083824 as seed for Random +150369.563 ops/s +Iteration 1: 186668.232 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 272671.648 ops/s + 186668.232 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +502,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:05:22 +# Run progress: 24.24% complete, ETA 00:04:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=704033337812 as seed for Random -227932.917 ops/s -Iteration 1: 258219.531 ops/s +# Warmup Iteration 1: Using SEED=624431359667 as seed for Random +101592.907 ops/s +Iteration 1: 187553.344 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 258219.531 ops/s + 187553.344 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +525,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:05:09 +# Run progress: 27.27% complete, ETA 00:04:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=716920877549 as seed for Random -338138.802 ops/s -Iteration 1: 462401.768 ops/s +# Warmup Iteration 1: Using SEED=637714860259 as seed for Random +167276.062 ops/s +Iteration 1: 276971.289 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 462401.768 ops/s + 276971.289 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +548,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:56 +# Run progress: 30.30% complete, ETA 00:04:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=729765991526 as seed for Random -392446.894 ops/s -Iteration 1: 476484.820 ops/s +# Warmup Iteration 1: Using SEED=651042839988 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +263353.672 ops/s +Iteration 1: 350567.188 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 476484.820 ops/s + 350567.188 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +576,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:43 +# Run progress: 33.33% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=742686215754 as seed for Random -372298.540 ops/s -Iteration 1: 446713.533 ops/s +# Warmup Iteration 1: Using SEED=664334940964 as seed for Random +220593.846 ops/s +Iteration 1: 346416.837 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 446713.533 ops/s + 346416.837 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +599,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:30 +# Run progress: 36.36% complete, ETA 00:04:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=755541185984 as seed for Random -236130.855 ops/s -Iteration 1: 293002.665 ops/s +# Warmup Iteration 1: Using SEED=677664868508 as seed for Random +95311.268 ops/s +Iteration 1: 134548.848 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 293002.665 ops/s + 134548.848 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +622,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:17 +# Run progress: 39.39% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=768346834103 as seed for Random -50178.202 ops/s -Iteration 1: 78687.842 ops/s +# Warmup Iteration 1: Using SEED=691008103733 as seed for Random +28314.292 ops/s +Iteration 1: 55740.907 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 78687.842 ops/s + 55740.907 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,20 +645,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:04 +# Run progress: 42.42% complete, ETA 00:03:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=781235693882 as seed for Random -505688.129 ops/s -Iteration 1: 498650.158 ops/s +# Warmup Iteration 1: Using SEED=704265006773 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +258709.536 ops/s +Iteration 1: 416830.302 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 498650.158 ops/s + 416830.302 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -355,20 +673,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:51 +# Run progress: 45.45% complete, ETA 00:03:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=794086562505 as seed for Random -224845.327 ops/s -Iteration 1: 260890.669 ops/s +# Warmup Iteration 1: Using SEED=717566956277 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) +WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +151620.825 ops/s +Iteration 1: 228545.761 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 260890.669 ops/s + 228545.761 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -378,20 +701,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:38 +# Run progress: 48.48% complete, ETA 00:03:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=806931670113 as seed for Random -221472.163 ops/s -Iteration 1: 258289.624 ops/s +# Warmup Iteration 1: Using SEED=730830263782 as seed for Random +104409.853 ops/s +Iteration 1: 157757.663 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 258289.624 ops/s + 157757.663 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -401,20 +724,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:25 +# Run progress: 51.52% complete, ETA 00:03:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=819766990581 as seed for Random -178645.649 ops/s -Iteration 1: 220408.427 ops/s +# Warmup Iteration 1: Using SEED=744371188087 as seed for Random +145140.282 ops/s +Iteration 1: 168446.039 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 220408.427 ops/s + 168446.039 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -424,20 +747,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:13 +# Run progress: 54.55% complete, ETA 00:03:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=832590218361 as seed for Random -38963.219 ops/s -Iteration 1: 64216.627 ops/s +# Warmup Iteration 1: Using SEED=757671599073 as seed for Random +19471.649 ops/s +Iteration 1: 43517.229 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 64216.627 ops/s + 43517.229 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -447,20 +770,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:00 +# Run progress: 57.58% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=845409557282 as seed for Random -244976.594 ops/s -Iteration 1: 312556.303 ops/s +# Warmup Iteration 1: Using SEED=770944147712 as seed for Random +131122.515 ops/s +Iteration 1: 202143.491 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 312556.303 ops/s + 202143.491 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -470,20 +793,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:47 +# Run progress: 60.61% complete, ETA 00:02:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=858392706139 as seed for Random -213408.951 ops/s -Iteration 1: 251448.135 ops/s +# Warmup Iteration 1: Using SEED=784177533072 as seed for Random +65447.141 ops/s +Iteration 1: 157025.789 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 251448.135 ops/s + 157025.789 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -493,20 +816,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:34 +# Run progress: 63.64% complete, ETA 00:02:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=871256898926 as seed for Random -261572.769 ops/s -Iteration 1: 322521.258 ops/s +# Warmup Iteration 1: Using SEED=797538740588 as seed for Random +205588.112 ops/s +Iteration 1: 297666.187 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 322521.258 ops/s + 297666.187 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -516,20 +839,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:21 +# Run progress: 66.67% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=884099469067 as seed for Random -53622.977 ops/s -Iteration 1: 61576.717 ops/s +# Warmup Iteration 1: Using SEED=810847615015 as seed for Random +14783.628 ops/s +Iteration 1: 24045.673 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 61576.717 ops/s + 24045.673 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -539,20 +862,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:08 +# Run progress: 69.70% complete, ETA 00:02:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=896892521740 as seed for Random -68636.525 ops/s -Iteration 1: 105983.632 ops/s +# Warmup Iteration 1: Using SEED=824076840900 as seed for Random +32827.070 ops/s +Iteration 1: 63055.564 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 105983.632 ops/s + 63055.564 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -564,18 +887,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=909803724983 as seed for Random -67776.120 ops/s -Iteration 1: 87073.388 ops/s +# Warmup Iteration 1: Using SEED=837421682802 as seed for Random +38360.550 ops/s +Iteration 1: 68347.640 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 87073.388 ops/s + 68347.640 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -587,18 +910,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Run progress: 75.76% complete, ETA 00:01:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=922698211139 as seed for Random -52976.908 ops/s -Iteration 1: 117612.468 ops/s +# Warmup Iteration 1: Using SEED=850753640628 as seed for Random +12327.564 ops/s +Iteration 1: 12860.215 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 117612.468 ops/s + 12860.215 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -608,20 +931,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:30 +# Run progress: 78.79% complete, ETA 00:01:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=935522892001 as seed for Random -124611.104 ops/s -Iteration 1: 170828.188 ops/s +# Warmup Iteration 1: Using SEED=864035147290 as seed for Random +75757.377 ops/s +Iteration 1: 116575.042 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 170828.188 ops/s + 116575.042 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -633,18 +956,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=948327002746 as seed for Random -113874.061 ops/s -Iteration 1: 180175.762 ops/s +# Warmup Iteration 1: Using SEED=877319199832 as seed for Random +66066.470 ops/s +Iteration 1: 124739.937 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 180175.762 ops/s + 124739.937 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -656,18 +979,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=961134808256 as seed for Random -96293.609 ops/s -Iteration 1: 107278.686 ops/s +# Warmup Iteration 1: Using SEED=890530217228 as seed for Random +53339.373 ops/s +Iteration 1: 70288.407 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 107278.686 ops/s + 70288.407 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -679,18 +1002,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=974056281489 as seed for Random -39255.706 ops/s -Iteration 1: 99558.866 ops/s +# Warmup Iteration 1: Using SEED=903905445405 as seed for Random +64301.054 ops/s +Iteration 1: 122757.657 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 99558.866 ops/s + 122757.657 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -702,18 +1025,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=986906745702 as seed for Random -67356.959 ops/s -Iteration 1: 85214.526 ops/s +# Warmup Iteration 1: Using SEED=917105616820 as seed for Random +47851.248 ops/s +Iteration 1: 80420.513 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 85214.526 ops/s + 80420.513 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -725,18 +1048,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=999762383362 as seed for Random -125652.763 ops/s -Iteration 1: 323649.420 ops/s +# Warmup Iteration 1: Using SEED=930375282333 as seed for Random +109715.054 ops/s +Iteration 1: 208052.838 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 323649.420 ops/s + 208052.838 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -748,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1012611805022 as seed for Random -116955.892 ops/s -Iteration 1: 324468.813 ops/s +# Warmup Iteration 1: Using SEED=943639216302 as seed for Random +48652.990 ops/s +Iteration 1: 162940.009 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 324468.813 ops/s + 162940.009 ops/s -# Run complete. Total time: 00:07:04 +# Run complete. Total time: 00:07:06 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 594909.027 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 388606.652 ops/s -c.g.f.j.databind.Deserialization.boon thrpt 180658.481 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 689593.010 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 550991.463 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 238422.683 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 65351.686 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 272671.648 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 258219.531 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 462401.768 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 476484.820 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 446713.533 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 293002.665 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 78687.842 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 498650.158 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 260890.669 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 258289.624 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 220408.427 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 64216.627 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 312556.303 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 251448.135 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 322521.258 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 61576.717 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 105983.632 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 87073.388 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 117612.468 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 170828.188 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 180175.762 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 107278.686 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 99558.866 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 85214.526 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 323649.420 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 324468.813 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 459163.113 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 244401.207 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 507154.626 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 461716.761 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 153718.263 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 37973.542 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 186668.232 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 187553.344 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 276971.289 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 350567.188 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 346416.837 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 134548.848 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 55740.907 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 416830.302 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 228545.761 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 157757.663 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 168446.039 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 43517.229 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 202143.491 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 157025.789 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 297666.187 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 24045.673 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 63055.564 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 68347.640 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 12860.215 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 116575.042 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 124739.937 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 70288.407 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 122757.657 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 80420.513 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 208052.838 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 162940.009 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt index bc7ec80..28a994c 100644 --- a/output/users-deser-1-10.txt +++ b/output/users-deser-1-10.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1450725212180 as seed for Random -58394.137 ops/s -Iteration 1: 67878.154 ops/s +# Warmup Iteration 1: Using SEED=1385678316460 as seed for Random +38298.420 ops/s +Iteration 1: 49129.606 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 67878.154 ops/s + 49129.606 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:53 +# Run progress: 3.03% complete, ETA 00:07:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1463565273106 as seed for Random -47357.898 ops/s -Iteration 1: 57642.203 ops/s +# Warmup Iteration 1: Using SEED=1398949563071 as seed for Random +23340.098 ops/s +Iteration 1: 37956.861 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 57642.203 ops/s + 37956.861 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,328 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:39 +# Run progress: 6.06% complete, ETA 00:06:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1476447007276 as seed for Random -26713.252 ops/s -Iteration 1: 31693.147 ops/s +# Warmup Iteration 1: Using SEED=1412281081151 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) -Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": - 31693.147 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +387,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:26 +# Run progress: 9.09% complete, ETA 00:04:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1489301509435 as seed for Random -62995.896 ops/s -Iteration 1: 79731.440 ops/s +# Warmup Iteration 1: Using SEED=1413432306106 as seed for Random +32334.017 ops/s +Iteration 1: 54794.609 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 79731.440 ops/s + 54794.609 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +410,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:13 +# Run progress: 12.12% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1502201854610 as seed for Random -69969.516 ops/s -Iteration 1: 72387.240 ops/s +# Warmup Iteration 1: Using SEED=1426725845470 as seed for Random +44202.334 ops/s +Iteration 1: 53440.465 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 72387.240 ops/s + 53440.465 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +433,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:00 +# Run progress: 15.15% complete, ETA 00:05:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1515044393589 as seed for Random -29745.157 ops/s -Iteration 1: 37418.342 ops/s +# Warmup Iteration 1: Using SEED=1439957639548 as seed for Random +11170.988 ops/s +Iteration 1: 25233.812 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 37418.342 ops/s + 25233.812 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +456,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:47 +# Run progress: 18.18% complete, ETA 00:05:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1527868492883 as seed for Random -2049.543 ops/s -Iteration 1: 6213.295 ops/s +# Warmup Iteration 1: Using SEED=1453261610582 as seed for Random +1604.844 ops/s +Iteration 1: 3815.989 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 6213.295 ops/s + 3815.989 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +479,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:34 +# Run progress: 21.21% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1540728156452 as seed for Random -30647.060 ops/s -Iteration 1: 38250.916 ops/s +# Warmup Iteration 1: Using SEED=1466599604928 as seed for Random +14096.428 ops/s +Iteration 1: 24272.467 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 38250.916 ops/s + 24272.467 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +502,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:05:21 +# Run progress: 24.24% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1553647281275 as seed for Random -24684.330 ops/s -Iteration 1: 37020.393 ops/s +# Warmup Iteration 1: Using SEED=1479922444985 as seed for Random +14626.531 ops/s +Iteration 1: 23893.705 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 37020.393 ops/s + 23893.705 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +525,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:05:08 +# Run progress: 27.27% complete, ETA 00:04:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1566514657324 as seed for Random -43689.344 ops/s -Iteration 1: 53412.235 ops/s +# Warmup Iteration 1: Using SEED=1493255733012 as seed for Random +15848.135 ops/s +Iteration 1: 35038.644 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 53412.235 ops/s + 35038.644 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +548,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:56 +# Run progress: 30.30% complete, ETA 00:04:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1579480897512 as seed for Random -48477.969 ops/s -Iteration 1: 58682.285 ops/s +# Warmup Iteration 1: Using SEED=1506561911198 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +17880.200 ops/s +Iteration 1: 36175.288 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 58682.285 ops/s + 36175.288 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +576,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:43 +# Run progress: 33.33% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1592328361419 as seed for Random -47114.689 ops/s -Iteration 1: 56451.650 ops/s +# Warmup Iteration 1: Using SEED=1519901552103 as seed for Random +30419.809 ops/s +Iteration 1: 40857.407 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 56451.650 ops/s + 40857.407 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +599,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:30 +# Run progress: 36.36% complete, ETA 00:04:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1605139372753 as seed for Random -27578.576 ops/s -Iteration 1: 34064.771 ops/s +# Warmup Iteration 1: Using SEED=1533214699331 as seed for Random +7960.747 ops/s +Iteration 1: 14787.970 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 34064.771 ops/s + 14787.970 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +622,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:17 +# Run progress: 39.39% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1617956456613 as seed for Random -6577.360 ops/s -Iteration 1: 8306.150 ops/s +# Warmup Iteration 1: Using SEED=1546569596995 as seed for Random +4185.870 ops/s +Iteration 1: 7085.765 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 8306.150 ops/s + 7085.765 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,20 +645,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:04 +# Run progress: 42.42% complete, ETA 00:03:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1630826937705 as seed for Random -41846.655 ops/s -Iteration 1: 61961.761 ops/s +# Warmup Iteration 1: Using SEED=1559893994620 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +35490.134 ops/s +Iteration 1: 50803.668 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 61961.761 ops/s + 50803.668 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -355,20 +673,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:51 +# Run progress: 45.45% complete, ETA 00:03:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1643623657542 as seed for Random -23688.244 ops/s -Iteration 1: 27272.784 ops/s +# Warmup Iteration 1: Using SEED=1573144881777 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) +WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +24940.581 ops/s +Iteration 1: 30446.189 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 27272.784 ops/s + 30446.189 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -378,20 +701,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:38 +# Run progress: 48.48% complete, ETA 00:03:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1656484448269 as seed for Random -46034.663 ops/s -Iteration 1: 52598.951 ops/s +# Warmup Iteration 1: Using SEED=1586454457641 as seed for Random +10186.458 ops/s +Iteration 1: 29501.700 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 52598.951 ops/s + 29501.700 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -401,20 +724,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:25 +# Run progress: 51.52% complete, ETA 00:03:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1669389827781 as seed for Random -21036.481 ops/s -Iteration 1: 22690.391 ops/s +# Warmup Iteration 1: Using SEED=1599741683119 as seed for Random +17645.148 ops/s +Iteration 1: 23834.810 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 22690.391 ops/s + 23834.810 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -424,20 +747,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:12 +# Run progress: 54.55% complete, ETA 00:03:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1682226970540 as seed for Random -5186.559 ops/s -Iteration 1: 7373.244 ops/s +# Warmup Iteration 1: Using SEED=1613024942846 as seed for Random +2300.955 ops/s +Iteration 1: 5027.190 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 7373.244 ops/s + 5027.190 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -447,20 +770,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:00 +# Run progress: 57.58% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1695045138674 as seed for Random -29808.165 ops/s -Iteration 1: 43420.696 ops/s +# Warmup Iteration 1: Using SEED=1626350241645 as seed for Random +5362.520 ops/s +Iteration 1: 22723.804 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 43420.696 ops/s + 22723.804 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -470,20 +793,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:47 +# Run progress: 60.61% complete, ETA 00:02:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1707929929700 as seed for Random -24992.314 ops/s -Iteration 1: 37416.057 ops/s +# Warmup Iteration 1: Using SEED=1639712430432 as seed for Random +2475.624 ops/s +Iteration 1: 12654.852 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 37416.057 ops/s + 12654.852 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -493,20 +816,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:34 +# Run progress: 63.64% complete, ETA 00:02:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1720744041986 as seed for Random -44436.220 ops/s -Iteration 1: 57942.549 ops/s +# Warmup Iteration 1: Using SEED=1653118529382 as seed for Random +9925.101 ops/s +Iteration 1: 32503.153 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 57942.549 ops/s + 32503.153 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -516,20 +839,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:21 +# Run progress: 66.67% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1733597465418 as seed for Random -7454.306 ops/s -Iteration 1: 22188.533 ops/s +# Warmup Iteration 1: Using SEED=1666464158712 as seed for Random +3862.049 ops/s +Iteration 1: 5107.464 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 22188.533 ops/s + 5107.464 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -539,20 +862,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:08 +# Run progress: 69.70% complete, ETA 00:02:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1746400026620 as seed for Random -1647.741 ops/s -Iteration 1: 1872.272 ops/s +# Warmup Iteration 1: Using SEED=1679857701622 as seed for Random +4234.184 ops/s +Iteration 1: 8839.429 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 1872.272 ops/s + 8839.429 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -564,18 +887,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1759274514104 as seed for Random -8671.090 ops/s -Iteration 1: 11506.190 ops/s +# Warmup Iteration 1: Using SEED=1693133058128 as seed for Random +5951.399 ops/s +Iteration 1: 10629.730 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 11506.190 ops/s + 10629.730 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -587,18 +910,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Run progress: 75.76% complete, ETA 00:01:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1772114451728 as seed for Random -10972.342 ops/s -Iteration 1: 25238.646 ops/s +# Warmup Iteration 1: Using SEED=1706435186693 as seed for Random +3013.655 ops/s +Iteration 1: 10863.713 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 25238.646 ops/s + 10863.713 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -608,20 +931,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:30 +# Run progress: 78.79% complete, ETA 00:01:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1784960767146 as seed for Random -13054.346 ops/s -Iteration 1: 17629.841 ops/s +# Warmup Iteration 1: Using SEED=1719807600616 as seed for Random +3718.554 ops/s +Iteration 1: 7875.420 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 17629.841 ops/s + 7875.420 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -633,18 +956,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1797806943559 as seed for Random -15828.718 ops/s -Iteration 1: 21116.861 ops/s +# Warmup Iteration 1: Using SEED=1733127442058 as seed for Random +7036.249 ops/s +Iteration 1: 21129.810 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 21116.861 ops/s + 21129.810 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -656,18 +979,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1810615355288 as seed for Random -24001.748 ops/s -Iteration 1: 28153.687 ops/s +# Warmup Iteration 1: Using SEED=1746436003194 as seed for Random +10591.149 ops/s +Iteration 1: 16815.482 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 28153.687 ops/s + 16815.482 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -679,18 +1002,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1823458131816 as seed for Random -8211.538 ops/s -Iteration 1: 18433.914 ops/s +# Warmup Iteration 1: Using SEED=1759728347618 as seed for Random +4063.477 ops/s +Iteration 1: 10226.939 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 18433.914 ops/s + 10226.939 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -702,18 +1025,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1836259641969 as seed for Random -6454.671 ops/s -Iteration 1: 9498.713 ops/s +# Warmup Iteration 1: Using SEED=1773143741902 as seed for Random +6072.249 ops/s +Iteration 1: 8576.169 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 9498.713 ops/s + 8576.169 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -725,18 +1048,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1849070258212 as seed for Random -13421.777 ops/s -Iteration 1: 34715.665 ops/s +# Warmup Iteration 1: Using SEED=1786397266955 as seed for Random +9130.712 ops/s +Iteration 1: 23700.081 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 34715.665 ops/s + 23700.081 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -748,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1861932401635 as seed for Random -15009.751 ops/s -Iteration 1: 28337.884 ops/s +# Warmup Iteration 1: Using SEED=1799682432921 as seed for Random +5597.913 ops/s +Iteration 1: 17540.165 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 28337.884 ops/s + 17540.165 ops/s -# Run complete. Total time: 00:07:04 +# Run complete. Total time: 00:07:07 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 67878.154 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 57642.203 ops/s -c.g.f.j.databind.Deserialization.boon thrpt 31693.147 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 79731.440 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 72387.240 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 37418.342 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 6213.295 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 38250.916 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 37020.393 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 53412.235 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 58682.285 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 56451.650 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 34064.771 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 8306.150 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 61961.761 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 27272.784 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 52598.951 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 22690.391 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 7373.244 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 43420.696 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 37416.057 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 57942.549 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 22188.533 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 1872.272 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 11506.190 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 25238.646 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 17629.841 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 21116.861 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 28153.687 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 18433.914 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 9498.713 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 34715.665 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 28337.884 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 49129.606 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 37956.861 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 54794.609 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 53440.465 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 25233.812 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 3815.989 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 24272.467 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 23893.705 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 35038.644 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 36175.288 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 40857.407 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 14787.970 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 7085.765 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 50803.668 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 30446.189 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 29501.700 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 23834.810 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 5027.190 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 22723.804 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 12654.852 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 32503.153 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 5107.464 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 8839.429 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 10629.730 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 10863.713 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 7875.420 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 21129.810 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 16815.482 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 10226.939 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 8576.169 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 23700.081 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 17540.165 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt index e1ceb44..c1a5178 100644 --- a/output/users-deser-1-100.txt +++ b/output/users-deser-1-100.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2301123923263 as seed for Random -5718.590 ops/s -Iteration 1: 6901.150 ops/s +# Warmup Iteration 1: Using SEED=2243741765813 as seed for Random +2546.262 ops/s +Iteration 1: 4227.780 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 6901.150 ops/s + 4227.780 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:52 +# Run progress: 3.03% complete, ETA 00:07:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2313952543189 as seed for Random -4884.015 ops/s -Iteration 1: 5560.912 ops/s +# Warmup Iteration 1: Using SEED=2257106127549 as seed for Random +2022.101 ops/s +Iteration 1: 3651.445 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 5560.912 ops/s + 3651.445 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,328 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:39 +# Run progress: 6.06% complete, ETA 00:06:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2326832508703 as seed for Random -2943.796 ops/s -Iteration 1: 3307.825 ops/s +# Warmup Iteration 1: Using SEED=2270422272896 as seed for Random + + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) -Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": - 3307.825 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +387,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:26 +# Run progress: 9.09% complete, ETA 00:04:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2339714996929 as seed for Random -5913.059 ops/s -Iteration 1: 8746.396 ops/s +# Warmup Iteration 1: Using SEED=2271661269856 as seed for Random +4276.275 ops/s +Iteration 1: 6257.768 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 8746.396 ops/s + 6257.768 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +410,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:14 +# Run progress: 12.12% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2352669659933 as seed for Random -5917.969 ops/s -Iteration 1: 6836.194 ops/s +# Warmup Iteration 1: Using SEED=2284987118752 as seed for Random +2449.637 ops/s +Iteration 1: 3121.033 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 6836.194 ops/s + 3121.033 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +433,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:01 +# Run progress: 15.15% complete, ETA 00:05:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2365536300738 as seed for Random -2745.714 ops/s -Iteration 1: 3498.060 ops/s +# Warmup Iteration 1: Using SEED=2298300371214 as seed for Random +1270.837 ops/s +Iteration 1: 2466.950 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 3498.060 ops/s + 2466.950 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +456,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:47 +# Run progress: 18.18% complete, ETA 00:05:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2378377333544 as seed for Random -441.111 ops/s -Iteration 1: 738.525 ops/s +# Warmup Iteration 1: Using SEED=2311683854207 as seed for Random +134.552 ops/s +Iteration 1: 265.434 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 738.525 ops/s + 265.434 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +479,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:35 +# Run progress: 21.21% complete, ETA 00:05:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2391271091914 as seed for Random -3322.845 ops/s -Iteration 1: 4160.979 ops/s +# Warmup Iteration 1: Using SEED=2325252571270 as seed for Random +1743.538 ops/s +Iteration 1: 2596.791 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 4160.979 ops/s + 2596.791 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +502,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:05:22 +# Run progress: 24.24% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2404097374726 as seed for Random -2758.583 ops/s -Iteration 1: 3780.166 ops/s +# Warmup Iteration 1: Using SEED=2338669491974 as seed for Random +1224.887 ops/s +Iteration 1: 2498.042 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 3780.166 ops/s + 2498.042 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +525,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:05:09 +# Run progress: 27.27% complete, ETA 00:04:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2417044874079 as seed for Random -4267.084 ops/s -Iteration 1: 5465.122 ops/s +# Warmup Iteration 1: Using SEED=2352043975219 as seed for Random +1684.807 ops/s +Iteration 1: 3333.766 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 5465.122 ops/s + 3333.766 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +548,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:56 +# Run progress: 30.30% complete, ETA 00:04:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2429944809620 as seed for Random -4914.908 ops/s -Iteration 1: 5885.663 ops/s +# Warmup Iteration 1: Using SEED=2365434829481 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +2907.289 ops/s +Iteration 1: 4218.789 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 5885.663 ops/s + 4218.789 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +576,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:43 +# Run progress: 33.33% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2442771476882 as seed for Random -5339.907 ops/s -Iteration 1: 5959.974 ops/s +# Warmup Iteration 1: Using SEED=2378805243413 as seed for Random +2192.620 ops/s +Iteration 1: 3906.927 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 5959.974 ops/s + 3906.927 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +599,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:30 +# Run progress: 36.36% complete, ETA 00:04:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2455626303682 as seed for Random -2885.862 ops/s -Iteration 1: 3577.702 ops/s +# Warmup Iteration 1: Using SEED=2392065709059 as seed for Random +1078.077 ops/s +Iteration 1: 1621.800 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 3577.702 ops/s + 1621.800 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +622,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:17 +# Run progress: 39.39% complete, ETA 00:04:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2468450771414 as seed for Random -641.682 ops/s -Iteration 1: 809.017 ops/s +# Warmup Iteration 1: Using SEED=2405369890489 as seed for Random +355.496 ops/s +Iteration 1: 684.862 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 809.017 ops/s + 684.862 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,20 +645,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:04 +# Run progress: 42.42% complete, ETA 00:03:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2481350848864 as seed for Random -6489.299 ops/s -Iteration 1: 6561.948 ops/s +# Warmup Iteration 1: Using SEED=2418817227448 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +2068.928 ops/s +Iteration 1: 5044.155 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 6561.948 ops/s + 5044.155 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -355,20 +673,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:51 +# Run progress: 45.45% complete, ETA 00:03:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2494215084602 as seed for Random -2446.712 ops/s -Iteration 1: 2963.404 ops/s +# Warmup Iteration 1: Using SEED=2432161341833 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) +WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +2183.431 ops/s +Iteration 1: 3046.290 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 2963.404 ops/s + 3046.290 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -378,20 +701,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:38 +# Run progress: 48.48% complete, ETA 00:03:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2507119745040 as seed for Random -4696.510 ops/s -Iteration 1: 5744.048 ops/s +# Warmup Iteration 1: Using SEED=2445460977731 as seed for Random +2725.261 ops/s +Iteration 1: 3837.438 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 5744.048 ops/s + 3837.438 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -401,20 +724,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:26 +# Run progress: 51.52% complete, ETA 00:03:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2520049167655 as seed for Random -2036.223 ops/s -Iteration 1: 2493.076 ops/s +# Warmup Iteration 1: Using SEED=2458884352890 as seed for Random +1152.910 ops/s +Iteration 1: 918.776 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 2493.076 ops/s + 918.776 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -424,20 +747,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:13 +# Run progress: 54.55% complete, ETA 00:03:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2532959148899 as seed for Random -441.521 ops/s -Iteration 1: 702.176 ops/s +# Warmup Iteration 1: Using SEED=2472290169416 as seed for Random +223.038 ops/s +Iteration 1: 502.722 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 702.176 ops/s + 502.722 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -447,20 +770,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:00 +# Run progress: 57.58% complete, ETA 00:02:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2545871742302 as seed for Random -3447.433 ops/s -Iteration 1: 4487.470 ops/s +# Warmup Iteration 1: Using SEED=2485719919517 as seed for Random +754.768 ops/s +Iteration 1: 2922.800 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 4487.470 ops/s + 2922.800 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -470,20 +793,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:47 +# Run progress: 60.61% complete, ETA 00:02:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2558791892845 as seed for Random -2307.161 ops/s -Iteration 1: 3720.627 ops/s +# Warmup Iteration 1: Using SEED=2499096620885 as seed for Random +451.948 ops/s +Iteration 1: 535.669 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 3720.627 ops/s + 535.669 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -493,20 +816,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:34 +# Run progress: 63.64% complete, ETA 00:02:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2571695914919 as seed for Random -4032.587 ops/s -Iteration 1: 5734.098 ops/s +# Warmup Iteration 1: Using SEED=2512607185280 as seed for Random +1655.845 ops/s +Iteration 1: 3847.397 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 5734.098 ops/s + 3847.397 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -518,18 +841,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2584612398032 as seed for Random -1766.441 ops/s -Iteration 1: 2815.213 ops/s +# Warmup Iteration 1: Using SEED=2525943639138 as seed for Random +892.869 ops/s +Iteration 1: 1708.973 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 2815.213 ops/s + 1708.973 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -541,18 +864,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2597538220645 as seed for Random -896.533 ops/s -Iteration 1: 1572.749 ops/s +# Warmup Iteration 1: Using SEED=2539268466010 as seed for Random +405.600 ops/s +Iteration 1: 980.869 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 1572.749 ops/s + 980.869 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -564,18 +887,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2610406810239 as seed for Random -751.732 ops/s -Iteration 1: 1177.030 ops/s +# Warmup Iteration 1: Using SEED=2552713007487 as seed for Random +387.459 ops/s +Iteration 1: 1059.426 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 1177.030 ops/s + 1059.426 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -587,18 +910,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Run progress: 75.76% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2623314717508 as seed for Random -1242.728 ops/s -Iteration 1: 2605.322 ops/s +# Warmup Iteration 1: Using SEED=2566094152315 as seed for Random +314.480 ops/s +Iteration 1: 608.300 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 2605.322 ops/s + 608.300 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -610,18 +933,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2636144268707 as seed for Random -1366.286 ops/s -Iteration 1: 1832.773 ops/s +# Warmup Iteration 1: Using SEED=2579464254354 as seed for Random +926.908 ops/s +Iteration 1: 1218.373 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 1832.773 ops/s + 1218.373 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -633,18 +956,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2649096377089 as seed for Random -1540.233 ops/s -Iteration 1: 2201.709 ops/s +# Warmup Iteration 1: Using SEED=2592784605829 as seed for Random +1121.109 ops/s +Iteration 1: 2150.317 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 2201.709 ops/s + 2150.317 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -656,18 +979,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2661938769155 as seed for Random -2529.670 ops/s -Iteration 1: 3060.999 ops/s +# Warmup Iteration 1: Using SEED=2606130786612 as seed for Random +1355.640 ops/s +Iteration 1: 2030.586 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 3060.999 ops/s + 2030.586 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -679,18 +1002,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2674850486341 as seed for Random -1168.723 ops/s -Iteration 1: 1712.832 ops/s +# Warmup Iteration 1: Using SEED=2619495604458 as seed for Random +501.643 ops/s +Iteration 1: 990.990 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 1712.832 ops/s + 990.990 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -702,18 +1025,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2687743911035 as seed for Random -777.126 ops/s -Iteration 1: 921.076 ops/s +# Warmup Iteration 1: Using SEED=2632834828868 as seed for Random +370.513 ops/s +Iteration 1: 771.372 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 921.076 ops/s + 771.372 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -725,18 +1048,18 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2700635108954 as seed for Random -1546.239 ops/s -Iteration 1: 3599.847 ops/s +# Warmup Iteration 1: Using SEED=2646162786187 as seed for Random +1039.286 ops/s +Iteration 1: 2343.627 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 3599.847 ops/s + 2343.627 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -748,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2713533483469 as seed for Random -1091.988 ops/s -Iteration 1: 3169.823 ops/s +# Warmup Iteration 1: Using SEED=2659490874304 as seed for Random +1355.331 ops/s +Iteration 1: 2113.920 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 3169.823 ops/s + 2113.920 ops/s -# Run complete. Total time: 00:07:05 +# Run complete. Total time: 00:07:09 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 6901.150 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 5560.912 ops/s -c.g.f.j.databind.Deserialization.boon thrpt 3307.825 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 8746.396 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 6836.194 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 3498.060 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 738.525 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 4160.979 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 3780.166 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 5465.122 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 5885.663 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 5959.974 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 3577.702 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 809.017 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 6561.948 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 2963.404 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 5744.048 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 2493.076 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 702.176 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 4487.470 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 3720.627 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 5734.098 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2815.213 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 1572.749 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 1177.030 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2605.322 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 1832.773 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 2201.709 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 3060.999 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 1712.832 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 921.076 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 3599.847 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 3169.823 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 4227.780 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 3651.445 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 6257.768 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 3121.033 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 2466.950 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 265.434 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 2596.791 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 2498.042 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 3333.766 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 4218.789 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 3906.927 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 1621.800 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 684.862 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 5044.155 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 3046.290 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 3837.438 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 918.776 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 502.722 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 2922.800 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 535.669 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 3847.397 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 1708.973 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 980.869 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 1059.426 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 608.300 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 1218.373 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 2150.317 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 2030.586 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 990.990 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 771.372 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 2343.627 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 2113.920 ops/s diff --git a/output/users-deser-1-1000.txt b/output/users-deser-1-1000.txt index 0a3ae6a..88a60e2 100644 --- a/output/users-deser-1-1000.txt +++ b/output/users-deser-1-1000.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3165278269283 as seed for Random -577.978 ops/s -Iteration 1: 662.354 ops/s +# Warmup Iteration 1: Using SEED=3124116666666 as seed for Random +394.781 ops/s +Iteration 1: 481.523 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 662.354 ops/s + 481.523 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:59 +# Run progress: 3.03% complete, ETA 00:07:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3178340375529 as seed for Random -414.509 ops/s -Iteration 1: 495.602 ops/s +# Warmup Iteration 1: Using SEED=3137591258564 as seed for Random +230.890 ops/s +Iteration 1: 356.469 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 495.602 ops/s + 356.469 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,328 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:44 +# Run progress: 6.06% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3191324592235 as seed for Random -149.902 ops/s -Iteration 1: 211.462 ops/s +# Warmup Iteration 1: Using SEED=3151138338452 as seed for Random + + +java.lang.ExceptionInInitializerError + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) -Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": - 211.462 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +387,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:32 +# Run progress: 9.09% complete, ETA 00:04:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3204452101116 as seed for Random -671.583 ops/s -Iteration 1: 805.490 ops/s +# Warmup Iteration 1: Using SEED=3152561838719 as seed for Random +413.877 ops/s +Iteration 1: 579.373 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 805.490 ops/s + 579.373 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +410,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:18 +# Run progress: 12.12% complete, ETA 00:05:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3217370255166 as seed for Random -622.544 ops/s -Iteration 1: 684.031 ops/s +# Warmup Iteration 1: Using SEED=3166146011252 as seed for Random +363.219 ops/s +Iteration 1: 487.919 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 684.031 ops/s + 487.919 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +433,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:04 +# Run progress: 15.15% complete, ETA 00:05:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3230328794101 as seed for Random -245.434 ops/s -Iteration 1: 303.226 ops/s +# Warmup Iteration 1: Using SEED=3179702760848 as seed for Random +124.396 ops/s +Iteration 1: 157.414 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 303.226 ops/s + 157.414 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +456,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:51 +# Run progress: 18.18% complete, ETA 00:05:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3243355691433 as seed for Random -33.526 ops/s -Iteration 1: 60.485 ops/s +# Warmup Iteration 1: Using SEED=3193563149792 as seed for Random +12.427 ops/s +Iteration 1: 30.370 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 60.485 ops/s + 30.370 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +479,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:41 +# Run progress: 21.21% complete, ETA 00:05:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3257045292086 as seed for Random -331.112 ops/s -Iteration 1: 360.996 ops/s +# Warmup Iteration 1: Using SEED=3208873309414 as seed for Random +199.798 ops/s +Iteration 1: 260.301 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 360.996 ops/s + 260.301 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +502,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:05:27 +# Run progress: 24.24% complete, ETA 00:05:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3270103974608 as seed for Random -289.868 ops/s -Iteration 1: 349.942 ops/s +# Warmup Iteration 1: Using SEED=3222451783120 as seed for Random +188.289 ops/s +Iteration 1: 245.689 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 349.942 ops/s + 245.689 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +525,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:05:14 +# Run progress: 27.27% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3283230552557 as seed for Random -417.279 ops/s -Iteration 1: 515.923 ops/s +# Warmup Iteration 1: Using SEED=3236065271055 as seed for Random +218.466 ops/s +Iteration 1: 330.229 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 515.923 ops/s + 330.229 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +548,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:05:01 +# Run progress: 30.30% complete, ETA 00:04:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3296210854035 as seed for Random -502.509 ops/s -Iteration 1: 560.989 ops/s +# Warmup Iteration 1: Using SEED=3249633726159 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +277.082 ops/s +Iteration 1: 406.512 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 560.989 ops/s + 406.512 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +576,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:47 +# Run progress: 33.33% complete, ETA 00:04:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3309132289549 as seed for Random -455.027 ops/s -Iteration 1: 528.219 ops/s +# Warmup Iteration 1: Using SEED=3263188654753 as seed for Random +255.330 ops/s +Iteration 1: 375.358 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 528.219 ops/s + 375.358 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +599,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:34 +# Run progress: 36.36% complete, ETA 00:04:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3322106020365 as seed for Random -197.454 ops/s -Iteration 1: 232.546 ops/s +# Warmup Iteration 1: Using SEED=3276635192728 as seed for Random +136.681 ops/s +Iteration 1: 178.705 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 232.546 ops/s + 178.705 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +622,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:21 +# Run progress: 39.39% complete, ETA 00:04:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3335157268367 as seed for Random -44.107 ops/s -Iteration 1: 61.186 ops/s +# Warmup Iteration 1: Using SEED=3290313340685 as seed for Random +17.597 ops/s +Iteration 1: 30.195 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 61.186 ops/s + 30.195 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -334,18 +647,23 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Run progress: 42.42% complete, ETA 00:04:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3348771610096 as seed for Random -625.963 ops/s -Iteration 1: 626.017 ops/s +# Warmup Iteration 1: Using SEED=3307591810540 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +220.673 ops/s +Iteration 1: 396.739 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 626.017 ops/s + 396.739 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -355,20 +673,25 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:55 +# Run progress: 45.45% complete, ETA 00:03:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3361752727660 as seed for Random -238.118 ops/s -Iteration 1: 262.397 ops/s +# Warmup Iteration 1: Using SEED=3321133526306 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) +WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +202.854 ops/s +Iteration 1: 282.742 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 262.397 ops/s + 282.742 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -378,20 +701,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:42 +# Run progress: 48.48% complete, ETA 00:03:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3374780441940 as seed for Random -324.806 ops/s -Iteration 1: 526.412 ops/s +# Warmup Iteration 1: Using SEED=3334654286979 as seed for Random +190.725 ops/s +Iteration 1: 346.926 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 526.412 ops/s + 346.926 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -401,20 +724,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:29 +# Run progress: 51.52% complete, ETA 00:03:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3387748540988 as seed for Random -187.011 ops/s -Iteration 1: 221.334 ops/s +# Warmup Iteration 1: Using SEED=3348279332732 as seed for Random +165.111 ops/s +Iteration 1: 247.896 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 221.334 ops/s + 247.896 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -424,20 +747,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:16 +# Run progress: 54.55% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3400833969250 as seed for Random -17.444 ops/s -Iteration 1: 63.465 ops/s +# Warmup Iteration 1: Using SEED=3361834435398 as seed for Random +32.033 ops/s +Iteration 1: 50.107 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 63.465 ops/s + 50.107 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -447,20 +770,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:03 +# Run progress: 57.58% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3414435060615 as seed for Random -223.353 ops/s -Iteration 1: 424.265 ops/s +# Warmup Iteration 1: Using SEED=3376167496102 as seed for Random +68.546 ops/s +Iteration 1: 285.170 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 424.265 ops/s + 285.170 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -470,20 +793,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:50 +# Run progress: 60.61% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3427530486597 as seed for Random -191.866 ops/s -Iteration 1: 354.410 ops/s +# Warmup Iteration 1: Using SEED=3389727094988 as seed for Random +61.070 ops/s +Iteration 1: 226.282 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 354.410 ops/s + 226.282 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -493,20 +816,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:37 +# Run progress: 63.64% complete, ETA 00:02:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3440657141342 as seed for Random -397.068 ops/s -Iteration 1: 550.273 ops/s +# Warmup Iteration 1: Using SEED=3403643498917 as seed for Random +98.937 ops/s +Iteration 1: 389.676 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 550.273 ops/s + 389.676 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -516,20 +839,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:24 +# Run progress: 66.67% complete, ETA 00:02:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3453645363594 as seed for Random -195.505 ops/s -Iteration 1: 236.613 ops/s +# Warmup Iteration 1: Using SEED=3417208615674 as seed for Random +48.738 ops/s +Iteration 1: 61.783 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 236.613 ops/s + 61.783 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -539,20 +862,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:11 +# Run progress: 69.70% complete, ETA 00:02:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3466699277133 as seed for Random -28.025 ops/s -Iteration 1: 83.484 ops/s +# Warmup Iteration 1: Using SEED=3431216347269 as seed for Random +35.121 ops/s +Iteration 1: 54.706 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 83.484 ops/s + 54.706 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -562,20 +885,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:58 +# Run progress: 72.73% complete, ETA 00:02:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3480068344454 as seed for Random -74.679 ops/s -Iteration 1: 89.518 ops/s +# Warmup Iteration 1: Using SEED=3445261063117 as seed for Random +30.139 ops/s +Iteration 1: 80.519 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 89.518 ops/s + 80.519 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -585,20 +908,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:45 +# Run progress: 75.76% complete, ETA 00:01:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3493414634599 as seed for Random -172.446 ops/s -Iteration 1: 196.741 ops/s +# Warmup Iteration 1: Using SEED=3459244757894 as seed for Random +29.540 ops/s +Iteration 1: 75.953 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 196.741 ops/s + 75.953 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -608,20 +931,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:31 +# Run progress: 78.79% complete, ETA 00:01:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3506522316785 as seed for Random -80.806 ops/s -Iteration 1: 100.794 ops/s +# Warmup Iteration 1: Using SEED=3473368037776 as seed for Random +32.785 ops/s +Iteration 1: 48.549 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 100.794 ops/s + 48.549 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -631,20 +954,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3519869467141 as seed for Random -90.757 ops/s -Iteration 1: 222.319 ops/s +# Warmup Iteration 1: Using SEED=3488213199500 as seed for Random +113.946 ops/s +Iteration 1: 214.414 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 222.319 ops/s + 214.414 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -654,20 +977,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3533019897939 as seed for Random -234.925 ops/s -Iteration 1: 277.200 ops/s +# Warmup Iteration 1: Using SEED=3501814844935 as seed for Random +122.677 ops/s +Iteration 1: 191.835 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 277.200 ops/s + 191.835 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -677,20 +1000,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3546149004585 as seed for Random -89.614 ops/s -Iteration 1: 110.979 ops/s +# Warmup Iteration 1: Using SEED=3515417930694 as seed for Random +42.311 ops/s +Iteration 1: 60.641 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 110.979 ops/s + 60.641 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -700,20 +1023,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:39 +# Run progress: 90.91% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3559435263263 as seed for Random -38.359 ops/s -Iteration 1: 42.379 ops/s +# Warmup Iteration 1: Using SEED=3529561038121 as seed for Random +10.457 ops/s +Iteration 1: 18.016 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 42.379 ops/s + 18.016 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -723,20 +1046,20 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:26 +# Run progress: 93.94% complete, ETA 00:00:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3573734555204 as seed for Random -270.196 ops/s -Iteration 1: 309.797 ops/s +# Warmup Iteration 1: Using SEED=3549439701922 as seed for Random +57.494 ops/s +Iteration 1: 123.683 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 309.797 ops/s + 123.683 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -748,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3586803809163 as seed for Random -136.401 ops/s -Iteration 1: 256.105 ops/s +# Warmup Iteration 1: Using SEED=3563708477693 as seed for Random +58.859 ops/s +Iteration 1: 148.257 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 256.105 ops/s + 148.257 ops/s -# Run complete. Total time: 00:07:14 +# Run complete. Total time: 00:07:33 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 662.354 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 495.602 ops/s -c.g.f.j.databind.Deserialization.boon thrpt 211.462 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 805.490 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 684.031 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 303.226 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 60.485 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 360.996 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 349.942 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 515.923 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 560.989 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 528.219 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 232.546 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 61.186 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 626.017 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 262.397 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 526.412 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 221.334 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 63.465 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 424.265 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 354.410 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 550.273 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 236.613 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 83.484 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 89.518 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 196.741 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 100.794 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 222.319 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 277.200 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 110.979 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 42.379 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 309.797 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 256.105 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 481.523 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 356.469 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 579.373 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 487.919 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 157.414 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 30.370 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 260.301 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 245.689 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 330.229 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 406.512 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 375.358 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 178.705 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 30.195 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 396.739 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 282.742 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 346.926 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 247.896 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 50.107 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 285.170 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 226.282 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 389.676 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 61.783 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 54.706 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 80.519 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 75.953 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 48.549 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 214.414 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 191.835 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 60.641 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 18.016 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 123.683 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 148.257 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt index 504260e..c2cc9bc 100644 --- a/output/users-ser-1-1.txt +++ b/output/users-ser-1-1.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=174972919497 as seed for Random -718671.236 ops/s -Iteration 1: 787776.193 ops/s +# Warmup Iteration 1: Using SEED=102733812949 as seed for Random +361385.021 ops/s +Iteration 1: 435180.713 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 787776.193 ops/s + 435180.713 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:55 +# Run progress: 3.03% complete, ETA 00:07:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=187885868989 as seed for Random -553796.841 ops/s -Iteration 1: 613162.196 ops/s +# Warmup Iteration 1: Using SEED=115991103995 as seed for Random +250325.721 ops/s +Iteration 1: 349409.548 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 613162.196 ops/s + 349409.548 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,347 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:41 +# Run progress: 6.06% complete, ETA 00:06:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=200797098943 as seed for Random -148321.009 ops/s -Iteration 1: 165183.883 ops/s +# Warmup Iteration 1: Using SEED=129254237511 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more -Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": - 165183.883 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +406,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:27 +# Run progress: 9.09% complete, ETA 00:04:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=213661998790 as seed for Random -701796.176 ops/s -Iteration 1: 806712.515 ops/s +# Warmup Iteration 1: Using SEED=130397093516 as seed for Random +405643.821 ops/s +Iteration 1: 537078.492 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 806712.515 ops/s + 537078.492 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +429,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:14 +# Run progress: 12.12% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=226541277028 as seed for Random -775608.064 ops/s -Iteration 1: 767811.414 ops/s +# Warmup Iteration 1: Using SEED=143697446401 as seed for Random +433839.888 ops/s +Iteration 1: 467418.198 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 767811.414 ops/s + 467418.198 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +452,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:01 +# Run progress: 15.15% complete, ETA 00:05:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=239413210708 as seed for Random -508181.631 ops/s -Iteration 1: 564454.731 ops/s +# Warmup Iteration 1: Using SEED=156963586616 as seed for Random +273646.965 ops/s +Iteration 1: 456203.471 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 564454.731 ops/s + 456203.471 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +475,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:48 +# Run progress: 18.18% complete, ETA 00:05:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=252246748917 as seed for Random -2786.082 ops/s -Iteration 1: 1534.220 ops/s +# Warmup Iteration 1: Using SEED=170213068166 as seed for Random +2060.726 ops/s +Iteration 1: 1225.189 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1534.220 ops/s + 1225.189 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +498,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:35 +# Run progress: 21.21% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=265100951782 as seed for Random -309307.513 ops/s -Iteration 1: 369894.125 ops/s +# Warmup Iteration 1: Using SEED=183531693311 as seed for Random +109965.205 ops/s +Iteration 1: 234767.030 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 369894.125 ops/s + 234767.030 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +521,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:05:22 +# Run progress: 24.24% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=278039834932 as seed for Random -214220.841 ops/s -Iteration 1: 255536.879 ops/s +# Warmup Iteration 1: Using SEED=196871337436 as seed for Random +88328.048 ops/s +Iteration 1: 131126.432 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 255536.879 ops/s + 131126.432 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +544,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:05:09 +# Run progress: 27.27% complete, ETA 00:04:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=290961022462 as seed for Random -534022.354 ops/s -Iteration 1: 594452.216 ops/s +# Warmup Iteration 1: Using SEED=210190077356 as seed for Random +249158.087 ops/s +Iteration 1: 369067.063 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 594452.216 ops/s + 369067.063 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +567,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:56 +# Run progress: 30.30% complete, ETA 00:04:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=303843322193 as seed for Random -521358.677 ops/s -Iteration 1: 544240.835 ops/s +# Warmup Iteration 1: Using SEED=223487432950 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +298784.439 ops/s +Iteration 1: 360774.571 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 544240.835 ops/s + 360774.571 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +595,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:43 +# Run progress: 33.33% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=316824009127 as seed for Random -533096.200 ops/s -Iteration 1: 614235.596 ops/s +# Warmup Iteration 1: Using SEED=236780797599 as seed for Random +286574.245 ops/s +Iteration 1: 366347.529 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 614235.596 ops/s + 366347.529 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +618,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:30 +# Run progress: 36.36% complete, ETA 00:04:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=329681004451 as seed for Random -113330.684 ops/s -Iteration 1: 150578.254 ops/s +# Warmup Iteration 1: Using SEED=250082300605 as seed for Random +80803.383 ops/s +Iteration 1: 114570.908 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 150578.254 ops/s + 114570.908 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +641,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:17 +# Run progress: 39.39% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=342534284221 as seed for Random -166312.669 ops/s -Iteration 1: 238117.751 ops/s +# Warmup Iteration 1: Using SEED=263328442212 as seed for Random +107145.709 ops/s +Iteration 1: 156401.137 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 238117.751 ops/s + 156401.137 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,20 +664,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:04 +# Run progress: 42.42% complete, ETA 00:03:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=355412817154 as seed for Random -731087.857 ops/s -Iteration 1: 814143.128 ops/s +# Warmup Iteration 1: Using SEED=276636897895 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +485140.234 ops/s +Iteration 1: 480715.333 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 814143.128 ops/s + 480715.333 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -355,20 +692,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:52 +# Run progress: 45.45% complete, ETA 00:03:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=368259895392 as seed for Random -284622.338 ops/s -Iteration 1: 341284.063 ops/s +# Warmup Iteration 1: Using SEED=289934236928 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) +WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +152552.479 ops/s +Iteration 1: 209808.131 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 341284.063 ops/s + 209808.131 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -378,20 +720,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:39 +# Run progress: 48.48% complete, ETA 00:03:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=381113605170 as seed for Random -324738.450 ops/s -Iteration 1: 563295.044 ops/s +# Warmup Iteration 1: Using SEED=303136038192 as seed for Random +269421.879 ops/s +Iteration 1: 307698.343 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 563295.044 ops/s + 307698.343 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -401,20 +743,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:26 +# Run progress: 51.52% complete, ETA 00:03:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=393949385797 as seed for Random -255265.376 ops/s -Iteration 1: 302155.444 ops/s +# Warmup Iteration 1: Using SEED=316501226675 as seed for Random +154593.553 ops/s +Iteration 1: 214868.313 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 302155.444 ops/s + 214868.313 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -424,20 +766,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:13 +# Run progress: 54.55% complete, ETA 00:03:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=406880241241 as seed for Random -94959.390 ops/s -Iteration 1: 177526.068 ops/s +# Warmup Iteration 1: Using SEED=329748975113 as seed for Random +38961.081 ops/s +Iteration 1: 98434.512 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 177526.068 ops/s + 98434.512 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -447,20 +789,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:03:00 +# Run progress: 57.58% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=419760207633 as seed for Random -274795.766 ops/s -Iteration 1: 319216.019 ops/s +# Warmup Iteration 1: Using SEED=343006188277 as seed for Random +162854.711 ops/s +Iteration 1: 220271.183 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 319216.019 ops/s + 220271.183 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -470,20 +812,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:47 +# Run progress: 60.61% complete, ETA 00:02:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=432736590183 as seed for Random -114629.782 ops/s -Iteration 1: 141844.583 ops/s +# Warmup Iteration 1: Using SEED=356231701188 as seed for Random +92315.201 ops/s +Iteration 1: 104945.297 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 141844.583 ops/s + 104945.297 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -493,20 +835,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:34 +# Run progress: 63.64% complete, ETA 00:02:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=445622494742 as seed for Random -394840.403 ops/s -Iteration 1: 529782.495 ops/s +# Warmup Iteration 1: Using SEED=369561894115 as seed for Random +309487.800 ops/s +Iteration 1: 375467.865 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 529782.495 ops/s + 375467.865 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -516,20 +858,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:21 +# Run progress: 66.67% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=458471635756 as seed for Random -17199.894 ops/s -Iteration 1: 362540.869 ops/s +# Warmup Iteration 1: Using SEED=382839575334 as seed for Random +114961.350 ops/s +Iteration 1: 246944.838 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 362540.869 ops/s + 246944.838 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -539,20 +881,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:08 +# Run progress: 69.70% complete, ETA 00:02:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=471332788650 as seed for Random -15720.405 ops/s -Iteration 1: 18118.730 ops/s +# Warmup Iteration 1: Using SEED=396042489339 as seed for Random +29093.865 ops/s +Iteration 1: 76165.582 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 18118.730 ops/s + 76165.582 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -562,20 +904,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:56 +# Run progress: 72.73% complete, ETA 00:01:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=484226303553 as seed for Random -51100.872 ops/s -Iteration 1: 68885.756 ops/s +# Warmup Iteration 1: Using SEED=409325757150 as seed for Random +29904.996 ops/s +Iteration 1: 70394.123 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 68885.756 ops/s + 70394.123 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -585,20 +927,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:43 +# Run progress: 75.76% complete, ETA 00:01:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=497106990916 as seed for Random -104031.990 ops/s -Iteration 1: 274593.131 ops/s +# Warmup Iteration 1: Using SEED=422604808673 as seed for Random +103800.257 ops/s +Iteration 1: 203000.031 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 274593.131 ops/s + 203000.031 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -608,20 +950,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:30 +# Run progress: 78.79% complete, ETA 00:01:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=509985576214 as seed for Random -13143.034 ops/s -Iteration 1: 63579.396 ops/s +# Warmup Iteration 1: Using SEED=435883121451 as seed for Random +27976.543 ops/s +Iteration 1: 79370.677 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 63579.396 ops/s + 79370.677 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -631,20 +973,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:17 +# Run progress: 81.82% complete, ETA 00:01:16 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=522910791088 as seed for Random -268434.813 ops/s -Iteration 1: 330537.950 ops/s +# Warmup Iteration 1: Using SEED=449195625381 as seed for Random +129864.610 ops/s +Iteration 1: 211125.065 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 330537.950 ops/s + 211125.065 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -656,18 +998,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=535842323626 as seed for Random -287587.333 ops/s -Iteration 1: 322418.732 ops/s +# Warmup Iteration 1: Using SEED=462404809361 as seed for Random +186802.843 ops/s +Iteration 1: 202989.265 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 322418.732 ops/s + 202989.265 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -679,18 +1021,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=548803871491 as seed for Random -33338.295 ops/s -Iteration 1: 109006.324 ops/s +# Warmup Iteration 1: Using SEED=475755842866 as seed for Random +36946.076 ops/s +Iteration 1: 91488.819 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 109006.324 ops/s + 91488.819 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -702,18 +1044,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=561693582167 as seed for Random -62305.096 ops/s -Iteration 1: 83603.744 ops/s +# Warmup Iteration 1: Using SEED=489152591335 as seed for Random +23360.062 ops/s +Iteration 1: 26114.151 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 83603.744 ops/s + 26114.151 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -725,18 +1067,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=574570797327 as seed for Random -37640.515 ops/s -Iteration 1: 80921.595 ops/s +# Warmup Iteration 1: Using SEED=502477420238 as seed for Random +10612.358 ops/s +Iteration 1: 51210.622 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 80921.595 ops/s + 51210.622 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -748,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=587536895285 as seed for Random -107721.465 ops/s -Iteration 1: 134522.690 ops/s +# Warmup Iteration 1: Using SEED=515843267831 as seed for Random +65840.120 ops/s +Iteration 1: 91677.332 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 134522.690 ops/s + 91677.332 ops/s -# Run complete. Total time: 00:07:05 +# Run complete. Total time: 00:07:06 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -766,36 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 787776.193 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 613162.196 ops/s -c.g.f.j.databind.Serialization.boon thrpt 165183.883 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 806712.515 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 767811.414 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 564454.731 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 1534.220 ops/s -c.g.f.j.databind.Serialization.genson thrpt 369894.125 ops/s -c.g.f.j.databind.Serialization.gson thrpt 255536.879 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 594452.216 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 544240.835 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 614235.596 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 150578.254 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 238117.751 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 814143.128 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 341284.063 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 563295.044 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 302155.444 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 177526.068 ops/s -c.g.f.j.stream.Serialization.genson thrpt 319216.019 ops/s -c.g.f.j.stream.Serialization.gson thrpt 141844.583 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 529782.495 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 362540.869 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 18118.730 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 68885.756 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 274593.131 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 63579.396 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 330537.950 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 322418.732 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 109006.324 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 83603.744 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 80921.595 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 134522.690 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 435180.713 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 349409.548 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 537078.492 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 467418.198 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 456203.471 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 1225.189 ops/s +c.g.f.j.databind.Serialization.genson thrpt 234767.030 ops/s +c.g.f.j.databind.Serialization.gson thrpt 131126.432 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 369067.063 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 360774.571 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 366347.529 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 114570.908 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 156401.137 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 480715.333 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 209808.131 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 307698.343 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 214868.313 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 98434.512 ops/s +c.g.f.j.stream.Serialization.genson thrpt 220271.183 ops/s +c.g.f.j.stream.Serialization.gson thrpt 104945.297 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 375467.865 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 246944.838 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 76165.582 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 70394.123 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 203000.031 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 79370.677 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 211125.065 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 202989.265 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 91488.819 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 26114.151 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 51210.622 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 91677.332 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt index 3bc90cd..91fe48d 100644 --- a/output/users-ser-1-10.txt +++ b/output/users-ser-1-10.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1026047747720 as seed for Random -80364.854 ops/s -Iteration 1: 86861.218 ops/s +# Warmup Iteration 1: Using SEED=957752366153 as seed for Random +41337.938 ops/s +Iteration 1: 57414.609 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 86861.218 ops/s + 57414.609 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:53 +# Run progress: 3.03% complete, ETA 00:07:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1038926485133 as seed for Random -55629.607 ops/s -Iteration 1: 61544.149 ops/s +# Warmup Iteration 1: Using SEED=971105880107 as seed for Random +35403.331 ops/s +Iteration 1: 48628.596 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 61544.149 ops/s + 48628.596 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,347 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:41 +# Run progress: 6.06% complete, ETA 00:06:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1051847147180 as seed for Random -20797.946 ops/s -Iteration 1: 25409.249 ops/s +# Warmup Iteration 1: Using SEED=984339578022 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more -Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": - 25409.249 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +406,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:26 +# Run progress: 9.09% complete, ETA 00:04:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1064666569487 as seed for Random -96777.922 ops/s -Iteration 1: 102580.150 ops/s +# Warmup Iteration 1: Using SEED=985512650782 as seed for Random +62984.606 ops/s +Iteration 1: 71211.062 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 102580.150 ops/s + 71211.062 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +429,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:13 +# Run progress: 12.12% complete, ETA 00:04:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1077492558580 as seed for Random -93307.145 ops/s -Iteration 1: 90958.980 ops/s +# Warmup Iteration 1: Using SEED=998819609055 as seed for Random +50864.180 ops/s +Iteration 1: 55454.956 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 90958.980 ops/s + 55454.956 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +452,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:00 +# Run progress: 15.15% complete, ETA 00:05:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1090314131713 as seed for Random -66182.434 ops/s -Iteration 1: 73288.914 ops/s +# Warmup Iteration 1: Using SEED=1012123689761 as seed for Random +15839.724 ops/s +Iteration 1: 29486.298 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 73288.914 ops/s + 29486.298 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +475,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:47 +# Run progress: 18.18% complete, ETA 00:05:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1103171830282 as seed for Random -594.762 ops/s -Iteration 1: 426.012 ops/s +# Warmup Iteration 1: Using SEED=1025366562487 as seed for Random +383.948 ops/s +Iteration 1: 360.226 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 426.012 ops/s + 360.226 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +498,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:34 +# Run progress: 21.21% complete, ETA 00:05:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1116083450403 as seed for Random -44949.117 ops/s -Iteration 1: 53954.727 ops/s +# Warmup Iteration 1: Using SEED=1038767299952 as seed for Random +25593.998 ops/s +Iteration 1: 34023.374 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 53954.727 ops/s + 34023.374 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +521,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:05:21 +# Run progress: 24.24% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1128942608093 as seed for Random -21477.926 ops/s -Iteration 1: 28191.278 ops/s +# Warmup Iteration 1: Using SEED=1052057041001 as seed for Random +14220.837 ops/s +Iteration 1: 16472.982 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 28191.278 ops/s + 16472.982 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +544,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:05:08 +# Run progress: 27.27% complete, ETA 00:04:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1141755484504 as seed for Random -60998.015 ops/s -Iteration 1: 64376.552 ops/s +# Warmup Iteration 1: Using SEED=1065368267328 as seed for Random +39783.053 ops/s +Iteration 1: 46892.006 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 64376.552 ops/s + 46892.006 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +567,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:56 +# Run progress: 30.30% complete, ETA 00:04:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1154663042397 as seed for Random -55447.140 ops/s -Iteration 1: 65240.421 ops/s +# Warmup Iteration 1: Using SEED=1078765239403 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +35895.855 ops/s +Iteration 1: 44653.746 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 65240.421 ops/s + 44653.746 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +595,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:43 +# Run progress: 33.33% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1167489161877 as seed for Random -58833.093 ops/s -Iteration 1: 64630.085 ops/s +# Warmup Iteration 1: Using SEED=1091980343207 as seed for Random +43059.385 ops/s +Iteration 1: 49319.636 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 64630.085 ops/s + 49319.636 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +618,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:30 +# Run progress: 36.36% complete, ETA 00:04:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1180296624278 as seed for Random -11320.200 ops/s -Iteration 1: 15396.811 ops/s +# Warmup Iteration 1: Using SEED=1105282817724 as seed for Random +5126.413 ops/s +Iteration 1: 10632.289 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 15396.811 ops/s + 10632.289 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +641,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:17 +# Run progress: 39.39% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1193095050102 as seed for Random -16459.892 ops/s -Iteration 1: 22049.523 ops/s +# Warmup Iteration 1: Using SEED=1118606073594 as seed for Random +13589.032 ops/s +Iteration 1: 19044.174 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 22049.523 ops/s + 19044.174 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,20 +664,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:04 +# Run progress: 42.42% complete, ETA 00:03:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1205919413854 as seed for Random -99362.032 ops/s -Iteration 1: 105949.210 ops/s +# Warmup Iteration 1: Using SEED=1131822876271 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +38468.503 ops/s +Iteration 1: 48057.192 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 105949.210 ops/s + 48057.192 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -355,20 +692,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:51 +# Run progress: 45.45% complete, ETA 00:03:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1218746336720 as seed for Random -39001.777 ops/s -Iteration 1: 40973.125 ops/s +# Warmup Iteration 1: Using SEED=1145120123447 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) +WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +12763.711 ops/s +Iteration 1: 17330.002 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 40973.125 ops/s + 17330.002 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -378,20 +720,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:38 +# Run progress: 48.48% complete, ETA 00:03:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1231567119058 as seed for Random -25569.694 ops/s -Iteration 1: 72456.540 ops/s +# Warmup Iteration 1: Using SEED=1158452994514 as seed for Random +18156.472 ops/s +Iteration 1: 38645.698 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 72456.540 ops/s + 38645.698 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -401,20 +743,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:25 +# Run progress: 51.52% complete, ETA 00:03:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1244370175102 as seed for Random -28405.876 ops/s -Iteration 1: 32868.180 ops/s +# Warmup Iteration 1: Using SEED=1171731014745 as seed for Random +17857.451 ops/s +Iteration 1: 22415.914 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 32868.180 ops/s + 22415.914 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -424,20 +766,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:12 +# Run progress: 54.55% complete, ETA 00:03:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1257175598336 as seed for Random -21393.037 ops/s -Iteration 1: 26124.238 ops/s +# Warmup Iteration 1: Using SEED=1184911912877 as seed for Random +8436.452 ops/s +Iteration 1: 15905.577 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 26124.238 ops/s + 15905.577 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -447,20 +789,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:59 +# Run progress: 57.58% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1270025083500 as seed for Random -23876.556 ops/s -Iteration 1: 40196.766 ops/s +# Warmup Iteration 1: Using SEED=1198199068900 as seed for Random +24000.387 ops/s +Iteration 1: 33369.742 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 40196.766 ops/s + 33369.742 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -470,20 +812,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:47 +# Run progress: 60.61% complete, ETA 00:02:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1282941617896 as seed for Random -11327.468 ops/s -Iteration 1: 16314.635 ops/s +# Warmup Iteration 1: Using SEED=1211527455790 as seed for Random +10352.647 ops/s +Iteration 1: 11539.905 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 16314.635 ops/s + 11539.905 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -493,20 +835,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:34 +# Run progress: 63.64% complete, ETA 00:02:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1295843930812 as seed for Random -54481.176 ops/s -Iteration 1: 64748.244 ops/s +# Warmup Iteration 1: Using SEED=1224965303885 as seed for Random +30303.260 ops/s +Iteration 1: 48198.857 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 64748.244 ops/s + 48198.857 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -516,20 +858,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:21 +# Run progress: 66.67% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1308644995490 as seed for Random -1959.244 ops/s -Iteration 1: 44529.722 ops/s +# Warmup Iteration 1: Using SEED=1238257231011 as seed for Random +17967.546 ops/s +Iteration 1: 36333.053 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 44529.722 ops/s + 36333.053 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -539,20 +881,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:08 +# Run progress: 69.70% complete, ETA 00:02:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1321470805213 as seed for Random -2565.188 ops/s -Iteration 1: 7317.537 ops/s +# Warmup Iteration 1: Using SEED=1251668415259 as seed for Random +5262.203 ops/s +Iteration 1: 12535.007 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 7317.537 ops/s + 12535.007 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -564,18 +906,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1334316285257 as seed for Random -6874.237 ops/s -Iteration 1: 10588.912 ops/s +# Warmup Iteration 1: Using SEED=1264994765991 as seed for Random +3388.645 ops/s +Iteration 1: 6576.154 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 10588.912 ops/s + 6576.154 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -587,18 +929,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Run progress: 75.76% complete, ETA 00:01:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1347256058482 as seed for Random -12027.436 ops/s -Iteration 1: 30297.906 ops/s +# Warmup Iteration 1: Using SEED=1278276868410 as seed for Random +8610.551 ops/s +Iteration 1: 15417.847 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 30297.906 ops/s + 15417.847 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -610,18 +952,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1360075422700 as seed for Random -4574.576 ops/s -Iteration 1: 8884.659 ops/s +# Warmup Iteration 1: Using SEED=1291599086811 as seed for Random +2843.051 ops/s +Iteration 1: 7199.525 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 8884.659 ops/s + 7199.525 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -633,18 +975,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1372949986819 as seed for Random -32028.472 ops/s -Iteration 1: 38724.557 ops/s +# Warmup Iteration 1: Using SEED=1304909035950 as seed for Random +6464.436 ops/s +Iteration 1: 21653.378 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 38724.557 ops/s + 21653.378 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -656,18 +998,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1385756949842 as seed for Random -39597.415 ops/s -Iteration 1: 45210.053 ops/s +# Warmup Iteration 1: Using SEED=1318075792990 as seed for Random +12154.212 ops/s +Iteration 1: 18611.905 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 45210.053 ops/s + 18611.905 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -679,18 +1021,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1398558133047 as seed for Random -6582.219 ops/s -Iteration 1: 12708.138 ops/s +# Warmup Iteration 1: Using SEED=1331395653385 as seed for Random +2287.034 ops/s +Iteration 1: 7790.220 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 12708.138 ops/s + 7790.220 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -702,18 +1044,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1411446756015 as seed for Random -6579.467 ops/s -Iteration 1: 8164.498 ops/s +# Warmup Iteration 1: Using SEED=1344710435396 as seed for Random +1604.539 ops/s +Iteration 1: 7411.745 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 8164.498 ops/s + 7411.745 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -725,18 +1067,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1424380399303 as seed for Random -3449.591 ops/s -Iteration 1: 8329.339 ops/s +# Warmup Iteration 1: Using SEED=1358169419321 as seed for Random +2289.889 ops/s +Iteration 1: 6070.390 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 8329.339 ops/s + 6070.390 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -748,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1437273627266 as seed for Random -9926.645 ops/s -Iteration 1: 12869.220 ops/s +# Warmup Iteration 1: Using SEED=1371474266417 as seed for Random +6721.341 ops/s +Iteration 1: 8060.713 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 12869.220 ops/s + 8060.713 ops/s -# Run complete. Total time: 00:07:04 +# Run complete. Total time: 00:07:07 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -765,37 +1107,36 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 86861.218 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 61544.149 ops/s -c.g.f.j.databind.Serialization.boon thrpt 25409.249 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 102580.150 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 90958.980 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 73288.914 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 426.012 ops/s -c.g.f.j.databind.Serialization.genson thrpt 53954.727 ops/s -c.g.f.j.databind.Serialization.gson thrpt 28191.278 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 64376.552 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 65240.421 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 64630.085 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 15396.811 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 22049.523 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 105949.210 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 40973.125 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 72456.540 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 32868.180 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 26124.238 ops/s -c.g.f.j.stream.Serialization.genson thrpt 40196.766 ops/s -c.g.f.j.stream.Serialization.gson thrpt 16314.635 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 64748.244 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 44529.722 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 7317.537 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 10588.912 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 30297.906 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 8884.659 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 38724.557 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 45210.053 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 12708.138 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 8164.498 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 8329.339 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 12869.220 ops/s +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 57414.609 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 48628.596 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 71211.062 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 55454.956 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 29486.298 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 360.226 ops/s +c.g.f.j.databind.Serialization.genson thrpt 34023.374 ops/s +c.g.f.j.databind.Serialization.gson thrpt 16472.982 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 46892.006 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 44653.746 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 49319.636 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 10632.289 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 19044.174 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 48057.192 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 17330.002 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 38645.698 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 22415.914 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 15905.577 ops/s +c.g.f.j.stream.Serialization.genson thrpt 33369.742 ops/s +c.g.f.j.stream.Serialization.gson thrpt 11539.905 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 48198.857 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 36333.053 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 12535.007 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 6576.154 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 15417.847 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 7199.525 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 21653.378 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 18611.905 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 7790.220 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 7411.745 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 6070.390 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 8060.713 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt index c9b7a43..b1c38c3 100644 --- a/output/users-ser-1-100.txt +++ b/output/users-ser-1-100.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1875342143699 as seed for Random -7441.084 ops/s -Iteration 1: 8717.179 ops/s +# Warmup Iteration 1: Using SEED=1813853282004 as seed for Random +4651.270 ops/s +Iteration 1: 5874.803 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 8717.179 ops/s + 5874.803 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:53 +# Run progress: 3.03% complete, ETA 00:07:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1888225280612 as seed for Random -6248.762 ops/s -Iteration 1: 6870.830 ops/s +# Warmup Iteration 1: Using SEED=1827211084415 as seed for Random +4162.949 ops/s +Iteration 1: 5323.428 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 6870.830 ops/s + 5323.428 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,347 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:39 +# Run progress: 6.06% complete, ETA 00:06:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1901107296548 as seed for Random -1673.873 ops/s -Iteration 1: 2399.718 ops/s +# Warmup Iteration 1: Using SEED=1840548595038 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more -Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": - 2399.718 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +406,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:27 +# Run progress: 9.09% complete, ETA 00:04:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1914048080089 as seed for Random -10668.671 ops/s -Iteration 1: 11274.444 ops/s +# Warmup Iteration 1: Using SEED=1841778681662 as seed for Random +6276.920 ops/s +Iteration 1: 6532.490 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 11274.444 ops/s + 6532.490 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +429,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:14 +# Run progress: 12.12% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1926916827994 as seed for Random -8522.561 ops/s -Iteration 1: 9336.051 ops/s +# Warmup Iteration 1: Using SEED=1855081422262 as seed for Random +4732.037 ops/s +Iteration 1: 5456.799 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 9336.051 ops/s + 5456.799 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +452,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:01 +# Run progress: 15.15% complete, ETA 00:05:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1939832224555 as seed for Random -2192.341 ops/s -Iteration 1: 3327.271 ops/s +# Warmup Iteration 1: Using SEED=1868442144039 as seed for Random +1628.688 ops/s +Iteration 1: 2466.033 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 3327.271 ops/s + 2466.033 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +475,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:48 +# Run progress: 18.18% complete, ETA 00:05:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1952751682359 as seed for Random -166.343 ops/s -Iteration 1: 150.161 ops/s +# Warmup Iteration 1: Using SEED=1881751405708 as seed for Random +70.590 ops/s +Iteration 1: 118.971 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 150.161 ops/s + 118.971 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +498,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:36 +# Run progress: 21.21% complete, ETA 00:05:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1965847376219 as seed for Random -5004.128 ops/s -Iteration 1: 5638.048 ops/s +# Warmup Iteration 1: Using SEED=1895588535670 as seed for Random +873.485 ops/s +Iteration 1: 3355.869 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 5638.048 ops/s + 3355.869 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +521,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:05:23 +# Run progress: 24.24% complete, ETA 00:04:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1978737754741 as seed for Random -2309.405 ops/s -Iteration 1: 2839.711 ops/s +# Warmup Iteration 1: Using SEED=1908911733369 as seed for Random +1161.531 ops/s +Iteration 1: 1832.768 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 2839.711 ops/s + 1832.768 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +544,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:05:09 +# Run progress: 27.27% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1991536928542 as seed for Random -7159.758 ops/s -Iteration 1: 8233.192 ops/s +# Warmup Iteration 1: Using SEED=1922253744963 as seed for Random +3591.050 ops/s +Iteration 1: 4098.045 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 8233.192 ops/s + 4098.045 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +567,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:56 +# Run progress: 30.30% complete, ETA 00:04:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2004384585649 as seed for Random -6723.037 ops/s -Iteration 1: 7540.825 ops/s +# Warmup Iteration 1: Using SEED=1935633226546 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +3979.290 ops/s +Iteration 1: 4555.039 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 7540.825 ops/s + 4555.039 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +595,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:43 +# Run progress: 33.33% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2017228417390 as seed for Random -6764.616 ops/s -Iteration 1: 7587.042 ops/s +# Warmup Iteration 1: Using SEED=1948980351062 as seed for Random +3702.707 ops/s +Iteration 1: 4567.911 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 7587.042 ops/s + 4567.911 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +618,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:30 +# Run progress: 36.36% complete, ETA 00:04:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2030049993748 as seed for Random -1155.802 ops/s -Iteration 1: 1522.844 ops/s +# Warmup Iteration 1: Using SEED=1962306099483 as seed for Random +700.285 ops/s +Iteration 1: 928.910 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 1522.844 ops/s + 928.910 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +641,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:17 +# Run progress: 39.39% complete, ETA 00:04:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2042942418064 as seed for Random -1950.030 ops/s -Iteration 1: 2263.503 ops/s +# Warmup Iteration 1: Using SEED=1975649648916 as seed for Random +1291.069 ops/s +Iteration 1: 1653.591 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 2263.503 ops/s + 1653.591 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,20 +664,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:05 +# Run progress: 42.42% complete, ETA 00:03:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2055848869691 as seed for Random -8286.105 ops/s -Iteration 1: 10070.420 ops/s +# Warmup Iteration 1: Using SEED=1988960457816 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +4434.329 ops/s +Iteration 1: 5482.125 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 10070.420 ops/s + 5482.125 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -355,20 +692,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:52 +# Run progress: 45.45% complete, ETA 00:03:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2068665739759 as seed for Random -3674.359 ops/s -Iteration 1: 4093.168 ops/s +# Warmup Iteration 1: Using SEED=2002268685138 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) +WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +1060.795 ops/s +Iteration 1: 1486.551 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 4093.168 ops/s + 1486.551 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -378,20 +720,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:39 +# Run progress: 48.48% complete, ETA 00:03:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2081489416135 as seed for Random -6157.809 ops/s -Iteration 1: 7491.860 ops/s +# Warmup Iteration 1: Using SEED=2015566481425 as seed for Random +2684.819 ops/s +Iteration 1: 4377.459 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 7491.860 ops/s + 4377.459 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -401,20 +743,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:26 +# Run progress: 51.52% complete, ETA 00:03:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2094361604604 as seed for Random -2359.018 ops/s -Iteration 1: 3203.285 ops/s +# Warmup Iteration 1: Using SEED=2028898562125 as seed for Random +1840.216 ops/s +Iteration 1: 2579.439 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 3203.285 ops/s + 2579.439 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -424,20 +766,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:13 +# Run progress: 54.55% complete, ETA 00:03:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2107174269527 as seed for Random -2137.071 ops/s -Iteration 1: 2571.316 ops/s +# Warmup Iteration 1: Using SEED=2042264519120 as seed for Random +673.618 ops/s +Iteration 1: 1800.193 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 2571.316 ops/s + 1800.193 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -447,20 +789,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:03:00 +# Run progress: 57.58% complete, ETA 00:02:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2119996165036 as seed for Random -3069.661 ops/s -Iteration 1: 4535.528 ops/s +# Warmup Iteration 1: Using SEED=2055582099064 as seed for Random +2673.105 ops/s +Iteration 1: 3257.927 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 4535.528 ops/s + 3257.927 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -470,20 +812,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:47 +# Run progress: 60.61% complete, ETA 00:02:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2132910786341 as seed for Random -1414.277 ops/s -Iteration 1: 1726.758 ops/s +# Warmup Iteration 1: Using SEED=2068971881433 as seed for Random +1062.172 ops/s +Iteration 1: 1306.262 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 1726.758 ops/s + 1306.262 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -493,20 +835,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:34 +# Run progress: 63.64% complete, ETA 00:02:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2145788463169 as seed for Random -7029.364 ops/s -Iteration 1: 8596.059 ops/s +# Warmup Iteration 1: Using SEED=2082310867348 as seed for Random +3063.522 ops/s +Iteration 1: 4652.920 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 8596.059 ops/s + 4652.920 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -516,20 +858,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:21 +# Run progress: 66.67% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2158635954108 as seed for Random -3807.997 ops/s -Iteration 1: 5126.476 ops/s +# Warmup Iteration 1: Using SEED=2095714372688 as seed for Random +3140.088 ops/s +Iteration 1: 4334.814 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 5126.476 ops/s + 4334.814 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -541,18 +883,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2171470557529 as seed for Random -1068.860 ops/s -Iteration 1: 1600.476 ops/s +# Warmup Iteration 1: Using SEED=2109088279748 as seed for Random +367.181 ops/s +Iteration 1: 1215.412 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 1600.476 ops/s + 1215.412 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -564,18 +906,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2184444758887 as seed for Random -799.567 ops/s -Iteration 1: 1054.748 ops/s +# Warmup Iteration 1: Using SEED=2122435735620 as seed for Random +441.992 ops/s +Iteration 1: 603.224 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 1054.748 ops/s + 603.224 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -587,18 +929,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Run progress: 75.76% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2197394446663 as seed for Random -1633.656 ops/s -Iteration 1: 2205.871 ops/s +# Warmup Iteration 1: Using SEED=2135764374573 as seed for Random +870.291 ops/s +Iteration 1: 1524.699 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 2205.871 ops/s + 1524.699 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -610,18 +952,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2210234284632 as seed for Random -384.577 ops/s -Iteration 1: 683.174 ops/s +# Warmup Iteration 1: Using SEED=2149187028815 as seed for Random +183.795 ops/s +Iteration 1: 532.940 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 683.174 ops/s + 532.940 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -633,18 +975,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2223195466910 as seed for Random -2661.408 ops/s -Iteration 1: 3502.817 ops/s +# Warmup Iteration 1: Using SEED=2162595749468 as seed for Random +1589.346 ops/s +Iteration 1: 2421.645 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 3502.817 ops/s + 2421.645 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -656,18 +998,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2236016388682 as seed for Random -3709.407 ops/s -Iteration 1: 4890.711 ops/s +# Warmup Iteration 1: Using SEED=2175940241022 as seed for Random +1416.406 ops/s +Iteration 1: 1713.467 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 4890.711 ops/s + 1713.467 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -679,18 +1021,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2248856893034 as seed for Random -380.326 ops/s -Iteration 1: 1057.167 ops/s +# Warmup Iteration 1: Using SEED=2189379578044 as seed for Random +614.852 ops/s +Iteration 1: 743.801 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 1057.167 ops/s + 743.801 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -702,18 +1044,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2261870804522 as seed for Random -357.094 ops/s -Iteration 1: 569.908 ops/s +# Warmup Iteration 1: Using SEED=2202733365839 as seed for Random +304.671 ops/s +Iteration 1: 604.225 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 569.908 ops/s + 604.225 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -725,18 +1067,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2274769875809 as seed for Random -455.347 ops/s -Iteration 1: 773.603 ops/s +# Warmup Iteration 1: Using SEED=2216099703745 as seed for Random +171.432 ops/s +Iteration 1: 466.924 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 773.603 ops/s + 466.924 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -748,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2287674468494 as seed for Random -939.868 ops/s -Iteration 1: 990.984 ops/s +# Warmup Iteration 1: Using SEED=2229533739880 as seed for Random +650.208 ops/s +Iteration 1: 771.551 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 990.984 ops/s + 771.551 ops/s -# Run complete. Total time: 00:07:05 +# Run complete. Total time: 00:07:09 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -765,37 +1107,36 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 8717.179 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 6870.830 ops/s -c.g.f.j.databind.Serialization.boon thrpt 2399.718 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 11274.444 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 9336.051 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 3327.271 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 150.161 ops/s -c.g.f.j.databind.Serialization.genson thrpt 5638.048 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2839.711 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 8233.192 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 7540.825 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 7587.042 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 1522.844 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 2263.503 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 10070.420 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 4093.168 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 7491.860 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 3203.285 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2571.316 ops/s -c.g.f.j.stream.Serialization.genson thrpt 4535.528 ops/s -c.g.f.j.stream.Serialization.gson thrpt 1726.758 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 8596.059 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 5126.476 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 1600.476 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 1054.748 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2205.871 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 683.174 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 3502.817 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 4890.711 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 1057.167 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 569.908 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 773.603 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 990.984 ops/s +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 5874.803 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 5323.428 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 6532.490 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 5456.799 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 2466.033 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 118.971 ops/s +c.g.f.j.databind.Serialization.genson thrpt 3355.869 ops/s +c.g.f.j.databind.Serialization.gson thrpt 1832.768 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 4098.045 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 4555.039 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 4567.911 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 928.910 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 1653.591 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 5482.125 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 1486.551 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 4377.459 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 2579.439 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 1800.193 ops/s +c.g.f.j.stream.Serialization.genson thrpt 3257.927 ops/s +c.g.f.j.stream.Serialization.gson thrpt 1306.262 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 4652.920 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 4334.814 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 1215.412 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 603.224 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 1524.699 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 532.940 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 2421.645 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 1713.467 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 743.801 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 604.225 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 466.924 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 771.551 ops/s diff --git a/output/users-ser-1-1000.txt b/output/users-ser-1-1000.txt index 8f1f444..44920e4 100644 --- a/output/users-ser-1-1000.txt +++ b/output/users-ser-1-1000.txt @@ -1,6 +1,6 @@ # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -12,18 +12,18 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2726988279517 as seed for Random -795.931 ops/s -Iteration 1: 880.782 ops/s +# Warmup Iteration 1: Using SEED=2673694899596 as seed for Random +506.005 ops/s +Iteration 1: 567.881 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 880.782 ops/s + 567.881 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -33,20 +33,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:06:57 +# Run progress: 3.03% complete, ETA 00:07:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2739966415424 as seed for Random -651.901 ops/s -Iteration 1: 763.238 ops/s +# Warmup Iteration 1: Using SEED=2687177027500 as seed for Random +298.858 ops/s +Iteration 1: 361.258 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 763.238 ops/s + 361.258 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -56,20 +56,347 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:42 +# Run progress: 6.06% complete, ETA 00:07:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2752916651721 as seed for Random -158.696 ops/s -Iteration 1: 184.757 ops/s +# Warmup Iteration 1: Using SEED=2700792843203 as seed for Random + + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) + +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) + at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) + at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) + at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + at java.base/java.lang.reflect.Method.invoke(Method.java:566) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) + at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) + at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more -Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": - 184.757 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -79,20 +406,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.boon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:06:31 +# Run progress: 9.09% complete, ETA 00:04:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2766106182110 as seed for Random -1016.235 ops/s -Iteration 1: 1085.682 ops/s +# Warmup Iteration 1: Using SEED=2702074025028 as seed for Random +504.482 ops/s +Iteration 1: 598.530 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 1085.682 ops/s + 598.530 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -102,20 +429,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:06:17 +# Run progress: 12.12% complete, ETA 00:05:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2779047994077 as seed for Random -814.564 ops/s -Iteration 1: 862.706 ops/s +# Warmup Iteration 1: Using SEED=2715555039667 as seed for Random +549.353 ops/s +Iteration 1: 589.876 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 862.706 ops/s + 589.876 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -125,20 +452,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:06:04 +# Run progress: 15.15% complete, ETA 00:05:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2792037388221 as seed for Random -224.854 ops/s -Iteration 1: 242.997 ops/s +# Warmup Iteration 1: Using SEED=2729034980483 as seed for Random +123.981 ops/s +Iteration 1: 175.397 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 242.997 ops/s + 175.397 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -148,20 +475,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:51 +# Run progress: 18.18% complete, ETA 00:05:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2805086309783 as seed for Random -24.961 ops/s -Iteration 1: 43.374 ops/s +# Warmup Iteration 1: Using SEED=2742728420714 as seed for Random +21.086 ops/s +Iteration 1: 31.344 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 43.374 ops/s + 31.344 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -171,20 +498,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:42 +# Run progress: 21.21% complete, ETA 00:05:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2818994671892 as seed for Random -426.602 ops/s -Iteration 1: 508.485 ops/s +# Warmup Iteration 1: Using SEED=2757777167086 as seed for Random +173.215 ops/s +Iteration 1: 306.007 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 508.485 ops/s + 306.007 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -194,20 +521,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:05:28 +# Run progress: 24.24% complete, ETA 00:05:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2831958728180 as seed for Random -229.325 ops/s -Iteration 1: 248.448 ops/s +# Warmup Iteration 1: Using SEED=2771271701490 as seed for Random +140.351 ops/s +Iteration 1: 159.865 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 248.448 ops/s + 159.865 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -217,20 +544,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:05:15 +# Run progress: 27.27% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2845053120196 as seed for Random -656.426 ops/s -Iteration 1: 747.466 ops/s +# Warmup Iteration 1: Using SEED=2784916807960 as seed for Random +316.113 ops/s +Iteration 1: 386.775 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 747.466 ops/s + 386.775 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -240,20 +567,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:05:01 +# Run progress: 30.30% complete, ETA 00:04:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2858029427593 as seed for Random -633.971 ops/s -Iteration 1: 738.266 ops/s +# Warmup Iteration 1: Using SEED=2798539917504 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) +WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +289.383 ops/s +Iteration 1: 356.214 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 738.266 ops/s + 356.214 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -263,20 +595,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:48 +# Run progress: 33.33% complete, ETA 00:04:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2870945312597 as seed for Random -643.668 ops/s -Iteration 1: 745.224 ops/s +# Warmup Iteration 1: Using SEED=2812066497398 as seed for Random +410.815 ops/s +Iteration 1: 509.062 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 745.224 ops/s + 509.062 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -286,20 +618,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:34 +# Run progress: 36.36% complete, ETA 00:04:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2883875503007 as seed for Random -111.602 ops/s -Iteration 1: 159.191 ops/s +# Warmup Iteration 1: Using SEED=2825591911171 as seed for Random +82.556 ops/s +Iteration 1: 96.173 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 159.191 ops/s + 96.173 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -309,20 +641,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:21 +# Run progress: 39.39% complete, ETA 00:04:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2897056107458 as seed for Random -199.313 ops/s -Iteration 1: 220.071 ops/s +# Warmup Iteration 1: Using SEED=2839563164438 as seed for Random +132.657 ops/s +Iteration 1: 169.963 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 220.071 ops/s + 169.963 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -332,20 +664,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:08 +# Run progress: 42.42% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2910146151654 as seed for Random -981.413 ops/s -Iteration 1: 962.966 ops/s +# Warmup Iteration 1: Using SEED=2853286008001 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) +WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +439.216 ops/s +Iteration 1: 509.976 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 962.966 ops/s + 509.976 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -355,20 +692,25 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:55 +# Run progress: 45.45% complete, ETA 00:03:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2923075813812 as seed for Random -361.384 ops/s -Iteration 1: 400.306 ops/s +# Warmup Iteration 1: Using SEED=2866800087274 as seed for Random +WARNING: An illegal reflective access operation has occurred +WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) +WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader +WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations +WARNING: All illegal access operations will be denied in a future release +133.815 ops/s +Iteration 1: 153.070 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 400.306 ops/s + 153.070 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -378,20 +720,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:42 +# Run progress: 48.48% complete, ETA 00:03:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2936064583726 as seed for Random -560.950 ops/s -Iteration 1: 676.190 ops/s +# Warmup Iteration 1: Using SEED=2880618571888 as seed for Random +329.543 ops/s +Iteration 1: 527.059 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 676.190 ops/s + 527.059 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -401,20 +743,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:29 +# Run progress: 51.52% complete, ETA 00:03:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2949036809339 as seed for Random -247.836 ops/s -Iteration 1: 285.330 ops/s +# Warmup Iteration 1: Using SEED=2894111468243 as seed for Random +165.248 ops/s +Iteration 1: 200.977 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 285.330 ops/s + 200.977 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -426,18 +768,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Run progress: 54.55% complete, ETA 00:03:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2962109876738 as seed for Random -251.682 ops/s -Iteration 1: 286.940 ops/s +# Warmup Iteration 1: Using SEED=2907697397677 as seed for Random +129.144 ops/s +Iteration 1: 202.149 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 286.940 ops/s + 202.149 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -449,18 +791,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Run progress: 57.58% complete, ETA 00:03:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2975144410087 as seed for Random -344.560 ops/s -Iteration 1: 471.966 ops/s +# Warmup Iteration 1: Using SEED=2921340541914 as seed for Random +202.344 ops/s +Iteration 1: 341.714 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 471.966 ops/s + 341.714 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -472,18 +814,18 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Run progress: 60.61% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2988197936695 as seed for Random -147.675 ops/s -Iteration 1: 161.070 ops/s +# Warmup Iteration 1: Using SEED=2934851529907 as seed for Random +101.659 ops/s +Iteration 1: 116.183 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 161.070 ops/s + 116.183 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -493,20 +835,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:36 +# Run progress: 63.64% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3001453353539 as seed for Random -505.263 ops/s -Iteration 1: 631.885 ops/s +# Warmup Iteration 1: Using SEED=2948685790388 as seed for Random +327.590 ops/s +Iteration 1: 496.939 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 631.885 ops/s + 496.939 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -516,20 +858,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:23 +# Run progress: 66.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3014416422426 as seed for Random -400.748 ops/s -Iteration 1: 584.937 ops/s +# Warmup Iteration 1: Using SEED=2962184750842 as seed for Random +253.312 ops/s +Iteration 1: 381.881 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 584.937 ops/s + 381.881 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -539,20 +881,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:10 +# Run progress: 69.70% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3027359379351 as seed for Random -116.932 ops/s -Iteration 1: 155.509 ops/s +# Warmup Iteration 1: Using SEED=2975744170888 as seed for Random +77.626 ops/s +Iteration 1: 109.108 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 155.509 ops/s + 109.108 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -562,20 +904,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:57 +# Run progress: 72.73% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3040498864235 as seed for Random -54.051 ops/s -Iteration 1: 83.730 ops/s +# Warmup Iteration 1: Using SEED=2989534855101 as seed for Random +48.073 ops/s +Iteration 1: 60.491 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 83.730 ops/s + 60.491 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -585,20 +927,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:44 +# Run progress: 75.76% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3053907876160 as seed for Random -145.391 ops/s -Iteration 1: 190.343 ops/s +# Warmup Iteration 1: Using SEED=3003853773855 as seed for Random +82.257 ops/s +Iteration 1: 146.356 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 190.343 ops/s + 146.356 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -608,20 +950,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:31 +# Run progress: 78.79% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3067030407217 as seed for Random -31.703 ops/s -Iteration 1: 41.378 ops/s +# Warmup Iteration 1: Using SEED=3017643958370 as seed for Random +15.571 ops/s +Iteration 1: 21.483 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 41.378 ops/s + 21.483 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -631,20 +973,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3081293156688 as seed for Random -294.411 ops/s -Iteration 1: 348.102 ops/s +# Warmup Iteration 1: Using SEED=3033549125191 as seed for Random +151.335 ops/s +Iteration 1: 250.152 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 348.102 ops/s + 250.152 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -654,20 +996,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3094369951062 as seed for Random -142.253 ops/s -Iteration 1: 141.392 ops/s +# Warmup Iteration 1: Using SEED=3047153433965 as seed for Random +139.758 ops/s +Iteration 1: 163.455 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 141.392 ops/s + 163.455 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -677,20 +1019,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3107522163965 as seed for Random -88.313 ops/s -Iteration 1: 110.852 ops/s +# Warmup Iteration 1: Using SEED=3060799066525 as seed for Random +32.557 ops/s +Iteration 1: 38.626 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 110.852 ops/s + 38.626 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -700,20 +1042,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:39 +# Run progress: 90.91% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3120842525976 as seed for Random -12.905 ops/s -Iteration 1: 14.042 ops/s +# Warmup Iteration 1: Using SEED=3075471114516 as seed for Random +10.934 ops/s +Iteration 1: 13.763 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 14.042 ops/s + 13.763 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -723,20 +1065,20 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:26 +# Run progress: 93.94% complete, ETA 00:00:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3137574028670 as seed for Random -44.690 ops/s -Iteration 1: 66.016 ops/s +# Warmup Iteration 1: Using SEED=3092307669367 as seed for Random +13.376 ops/s +Iteration 1: 24.857 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 66.016 ops/s + 24.857 ops/s # JMH version: 1.33 -# VM version: JDK 1.8.0_345, OpenJDK 64-Bit Server VM, 25.345-b01 -# VM invoker: /usr/lib/jvm/temurin-8-jdk-amd64/jre/bin/java +# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 +# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java # VM options: -Xms2g -Xmx2g # Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) # Warmup: 1 iterations, 10 s each @@ -748,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3151247184631 as seed for Random -60.276 ops/s -Iteration 1: 71.293 ops/s +# Warmup Iteration 1: Using SEED=3108079560960 as seed for Random +33.906 ops/s +Iteration 1: 36.963 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 71.293 ops/s + 36.963 ops/s -# Run complete. Total time: 00:07:17 +# Run complete. Total time: 00:07:29 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -765,37 +1107,36 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 880.782 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 763.238 ops/s -c.g.f.j.databind.Serialization.boon thrpt 184.757 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 1085.682 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 862.706 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 242.997 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 43.374 ops/s -c.g.f.j.databind.Serialization.genson thrpt 508.485 ops/s -c.g.f.j.databind.Serialization.gson thrpt 248.448 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 747.466 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 738.266 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 745.224 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 159.191 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 220.071 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 962.966 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 400.306 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 676.190 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 285.330 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 286.940 ops/s -c.g.f.j.stream.Serialization.genson thrpt 471.966 ops/s -c.g.f.j.stream.Serialization.gson thrpt 161.070 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 631.885 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 584.937 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 155.509 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 83.730 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 190.343 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 41.378 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 348.102 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 141.392 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 110.852 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 14.042 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 66.016 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 71.293 ops/s +Benchmark Mode Cnt Score Error Units +c.g.f.j.databind.Serialization.avajejsonb thrpt 567.881 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 361.258 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 598.530 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 589.876 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 175.397 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 31.344 ops/s +c.g.f.j.databind.Serialization.genson thrpt 306.007 ops/s +c.g.f.j.databind.Serialization.gson thrpt 159.865 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 386.775 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 356.214 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 509.062 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 96.173 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 169.963 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 509.976 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 153.070 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 527.059 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 200.977 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 202.149 ops/s +c.g.f.j.stream.Serialization.genson thrpt 341.714 ops/s +c.g.f.j.stream.Serialization.gson thrpt 116.183 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 496.939 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 381.881 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 109.108 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 60.491 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 146.356 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 21.483 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 250.152 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 163.455 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 38.626 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 13.763 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 24.857 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 36.963 ops/s From a5843af8dfa862091ad7216e24ae7cde65617e4e Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Fri, 28 Oct 2022 10:50:22 +0100 Subject: [PATCH 25/42] #53 java 11 --- build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 8d38cd4..8516173 100644 --- a/build.gradle +++ b/build.gradle @@ -9,8 +9,8 @@ group = 'com.github.fabienrenaud' version = '7' mainClassName = 'com.github.fabienrenaud.jjb.Cli' -//sourceCompatibility = JavaVersion.VERSION_17 -//targetCompatibility = JavaVersion.VERSION_17 +sourceCompatibility = JavaVersion.VERSION_11 +targetCompatibility = JavaVersion.VERSION_11 repositories { mavenCentral() From b7deefe55484c5c45e751537381a3f89172cf14e Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Fri, 28 Oct 2022 11:15:49 +0000 Subject: [PATCH 26/42] result adding back to repo [skip ci] another test --- output/clients-deser-1-1.txt | 176 +++++++------- output/clients-deser-1-10.txt | 176 +++++++------- output/clients-deser-1-100.txt | 176 +++++++------- output/clients-deser-1-1000.txt | 180 +++++++------- output/clients-ser-1-1.txt | 176 +++++++------- output/clients-ser-1-10.txt | 176 +++++++------- output/clients-ser-1-100.txt | 176 +++++++------- output/clients-ser-1-1000.txt | 176 +++++++------- output/users-deser-1-1.txt | 404 +++++++++++++++---------------- output/users-deser-1-10.txt | 411 ++++++++++++++++--------------- output/users-deser-1-100.txt | 404 +++++++++++++++---------------- output/users-deser-1-1000.txt | 394 +++++++++++++++--------------- output/users-ser-1-1.txt | 410 +++++++++++++++---------------- output/users-ser-1-10.txt | 410 +++++++++++++++---------------- output/users-ser-1-100.txt | 408 +++++++++++++++---------------- output/users-ser-1-1000.txt | 414 ++++++++++++++++---------------- 16 files changed, 2332 insertions(+), 2335 deletions(-) diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt index d72db4f..4e0f5b7 100644 --- a/output/clients-deser-1-1.txt +++ b/output/clients-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3779381581334 as seed for Random -169432.910 ops/s -Iteration 1: 337935.082 ops/s +# Warmup Iteration 1: Using SEED=3712013208416 as seed for Random +93505.644 ops/s +Iteration 1: 214210.721 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 337935.082 ops/s + 214210.721 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:07 +# Run progress: 6.67% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3792757184620 as seed for Random -68827.654 ops/s -Iteration 1: 192037.741 ops/s +# Warmup Iteration 1: Using SEED=3725292828900 as seed for Random +129042.417 ops/s +Iteration 1: 278011.152 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 192037.741 ops/s + 278011.152 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:54 +# Run progress: 13.33% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3806121917004 as seed for Random -145027.454 ops/s -Iteration 1: 434128.116 ops/s +# Warmup Iteration 1: Using SEED=3738516953910 as seed for Random +390459.546 ops/s +Iteration 1: 692472.252 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 434128.116 ops/s + 692472.252 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:40 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3819468777406 as seed for Random -238770.927 ops/s -Iteration 1: 407743.945 ops/s +# Warmup Iteration 1: Using SEED=3751581055097 as seed for Random +405914.206 ops/s +Iteration 1: 545963.443 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 407743.945 ops/s + 545963.443 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:27 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3832814488836 as seed for Random -25197.480 ops/s -Iteration 1: 55297.793 ops/s +# Warmup Iteration 1: Using SEED=3764713475433 as seed for Random +39495.785 ops/s +Iteration 1: 77620.237 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 55297.793 ops/s + 77620.237 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:13 +# Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3846151593224 as seed for Random -14817.126 ops/s -Iteration 1: 27636.012 ops/s +# Warmup Iteration 1: Using SEED=3777952826199 as seed for Random +20874.569 ops/s +Iteration 1: 38230.059 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 27636.012 ops/s + 38230.059 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:02:00 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3859477051488 as seed for Random -42485.098 ops/s -Iteration 1: 90172.052 ops/s +# Warmup Iteration 1: Using SEED=3791098410632 as seed for Random +108238.465 ops/s +Iteration 1: 183636.746 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 90172.052 ops/s + 183636.746 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:46 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3872879814629 as seed for Random -78903.581 ops/s -Iteration 1: 154147.118 ops/s +# Warmup Iteration 1: Using SEED=3804267177115 as seed for Random +15218.768 ops/s +Iteration 1: 54167.841 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 154147.118 ops/s + 54167.841 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:33 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3886242412948 as seed for Random -33146.197 ops/s -Iteration 1: 33831.606 ops/s +# Warmup Iteration 1: Using SEED=3817431393186 as seed for Random +66630.633 ops/s +Iteration 1: 90121.164 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 33831.606 ops/s + 90121.164 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:20 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3899650432333 as seed for Random +# Warmup Iteration 1: Using SEED=3830618839971 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -99612.585 ops/s -Iteration 1: 197796.298 ops/s +134666.458 ops/s +Iteration 1: 318545.987 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 197796.298 ops/s + 318545.987 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3912991714282 as seed for Random -56760.359 ops/s -Iteration 1: 101711.915 ops/s +# Warmup Iteration 1: Using SEED=3843741292869 as seed for Random +128649.591 ops/s +Iteration 1: 308065.777 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 101711.915 ops/s + 308065.777 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:53 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3926361570157 as seed for Random -57042.108 ops/s -Iteration 1: 113676.752 ops/s +# Warmup Iteration 1: Using SEED=3856882522383 as seed for Random +45171.530 ops/s +Iteration 1: 101968.368 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 113676.752 ops/s + 101968.368 ops/s # JMH version: 1.33 @@ -291,20 +291,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:40 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3939764399912 as seed for Random +# Warmup Iteration 1: Using SEED=3870031017070 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -125989.803 ops/s -Iteration 1: 283555.158 ops/s +133220.172 ops/s +Iteration 1: 188796.336 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 283555.158 ops/s + 188796.336 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3953239407385 as seed for Random -39063.105 ops/s -Iteration 1: 97800.530 ops/s +# Warmup Iteration 1: Using SEED=3883156595916 as seed for Random +40699.250 ops/s +Iteration 1: 136684.644 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 97800.530 ops/s + 136684.644 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3966652081165 as seed for Random -23328.430 ops/s -Iteration 1: 47244.600 ops/s +# Warmup Iteration 1: Using SEED=3896341101088 as seed for Random +127132.045 ops/s +Iteration 1: 213481.051 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 47244.600 ops/s + 213481.051 ops/s -# Run complete. Total time: 00:03:20 +# Run complete. Total time: 00:03:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 337935.082 ops/s -Deserialization.avajejsonb_jackson thrpt 192037.741 ops/s -Deserialization.dsljson thrpt 434128.116 ops/s -Deserialization.dsljson_reflection thrpt 407743.945 ops/s -Deserialization.fastjson thrpt 55297.793 ops/s -Deserialization.flexjson thrpt 27636.012 ops/s -Deserialization.genson thrpt 90172.052 ops/s -Deserialization.gson thrpt 154147.118 ops/s -Deserialization.jackson thrpt 33831.606 ops/s -Deserialization.jackson_afterburner thrpt 197796.298 ops/s -Deserialization.jackson_blackbird thrpt 101711.915 ops/s -Deserialization.jodd thrpt 113676.752 ops/s -Deserialization.jsoniter thrpt 283555.158 ops/s -Deserialization.logansquare thrpt 97800.530 ops/s -Deserialization.moshi thrpt 47244.600 ops/s +Deserialization.avajejsonb thrpt 214210.721 ops/s +Deserialization.avajejsonb_jackson thrpt 278011.152 ops/s +Deserialization.dsljson thrpt 692472.252 ops/s +Deserialization.dsljson_reflection thrpt 545963.443 ops/s +Deserialization.fastjson thrpt 77620.237 ops/s +Deserialization.flexjson thrpt 38230.059 ops/s +Deserialization.genson thrpt 183636.746 ops/s +Deserialization.gson thrpt 54167.841 ops/s +Deserialization.jackson thrpt 90121.164 ops/s +Deserialization.jackson_afterburner thrpt 318545.987 ops/s +Deserialization.jackson_blackbird thrpt 308065.777 ops/s +Deserialization.jodd thrpt 101968.368 ops/s +Deserialization.jsoniter thrpt 188796.336 ops/s +Deserialization.logansquare thrpt 136684.644 ops/s +Deserialization.moshi thrpt 213481.051 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt index 5298232..6a3427d 100644 --- a/output/clients-deser-1-10.txt +++ b/output/clients-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4182249346739 as seed for Random -6017.955 ops/s -Iteration 1: 13274.896 ops/s +# Warmup Iteration 1: Using SEED=4108529805057 as seed for Random +8394.585 ops/s +Iteration 1: 18514.823 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 13274.896 ops/s + 18514.823 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:08 +# Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4195681898195 as seed for Random -3016.048 ops/s -Iteration 1: 5033.687 ops/s +# Warmup Iteration 1: Using SEED=4121660065835 as seed for Random +4107.398 ops/s +Iteration 1: 12118.395 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 5033.687 ops/s + 12118.395 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:55 +# Run progress: 13.33% complete, ETA 00:02:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4209126946000 as seed for Random -29184.449 ops/s -Iteration 1: 56440.070 ops/s +# Warmup Iteration 1: Using SEED=4134935345661 as seed for Random +38689.073 ops/s +Iteration 1: 68724.000 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 56440.070 ops/s + 68724.000 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:41 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4222460961865 as seed for Random -19510.246 ops/s -Iteration 1: 42783.941 ops/s +# Warmup Iteration 1: Using SEED=4148073723093 as seed for Random +37887.139 ops/s +Iteration 1: 51857.392 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 42783.941 ops/s + 51857.392 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:27 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4235861220294 as seed for Random -2994.879 ops/s -Iteration 1: 6381.676 ops/s +# Warmup Iteration 1: Using SEED=4161199639673 as seed for Random +3698.196 ops/s +Iteration 1: 7165.223 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 6381.676 ops/s + 7165.223 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:14 +# Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4249291816631 as seed for Random -862.841 ops/s -Iteration 1: 1500.054 ops/s +# Warmup Iteration 1: Using SEED=4174359008982 as seed for Random +1420.640 ops/s +Iteration 1: 2827.813 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 1500.054 ops/s + 2827.813 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:02:00 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4262680251529 as seed for Random -2347.984 ops/s -Iteration 1: 4221.483 ops/s +# Warmup Iteration 1: Using SEED=4187571964736 as seed for Random +3975.862 ops/s +Iteration 1: 12089.213 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 4221.483 ops/s + 12089.213 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:47 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4275998665119 as seed for Random -2830.754 ops/s -Iteration 1: 8118.416 ops/s +# Warmup Iteration 1: Using SEED=4200832845892 as seed for Random +1535.706 ops/s +Iteration 1: 1755.411 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 8118.416 ops/s + 1755.411 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:33 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4289422584463 as seed for Random -2430.072 ops/s -Iteration 1: 3319.377 ops/s +# Warmup Iteration 1: Using SEED=4214008959301 as seed for Random +4212.101 ops/s +Iteration 1: 8060.423 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 3319.377 ops/s + 8060.423 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:20 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4302766257439 as seed for Random +# Warmup Iteration 1: Using SEED=4227235910504 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -3648.068 ops/s -Iteration 1: 5386.486 ops/s +3698.701 ops/s +Iteration 1: 6971.479 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 5386.486 ops/s + 6971.479 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4316153629622 as seed for Random -2973.342 ops/s -Iteration 1: 4429.806 ops/s +# Warmup Iteration 1: Using SEED=4240491695170 as seed for Random +2965.729 ops/s +Iteration 1: 5652.846 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 4429.806 ops/s + 5652.846 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:53 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4329474425893 as seed for Random -2769.335 ops/s -Iteration 1: 4908.409 ops/s +# Warmup Iteration 1: Using SEED=4253646304867 as seed for Random +3026.859 ops/s +Iteration 1: 8136.480 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 4908.409 ops/s + 8136.480 ops/s # JMH version: 1.33 @@ -291,20 +291,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:40 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4342816156933 as seed for Random +# Warmup Iteration 1: Using SEED=4266833726067 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -2152.094 ops/s -Iteration 1: 3060.697 ops/s +4850.101 ops/s +Iteration 1: 7813.794 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 3060.697 ops/s + 7813.794 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4356126560423 as seed for Random -2827.788 ops/s -Iteration 1: 5536.272 ops/s +# Warmup Iteration 1: Using SEED=4279977265961 as seed for Random +2314.127 ops/s +Iteration 1: 3222.031 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 5536.272 ops/s + 3222.031 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4369474603247 as seed for Random -3388.042 ops/s -Iteration 1: 4842.781 ops/s +# Warmup Iteration 1: Using SEED=4293130873147 as seed for Random +4599.519 ops/s +Iteration 1: 9593.957 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 4842.781 ops/s + 9593.957 ops/s -# Run complete. Total time: 00:03:20 +# Run complete. Total time: 00:03:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 13274.896 ops/s -Deserialization.avajejsonb_jackson thrpt 5033.687 ops/s -Deserialization.dsljson thrpt 56440.070 ops/s -Deserialization.dsljson_reflection thrpt 42783.941 ops/s -Deserialization.fastjson thrpt 6381.676 ops/s -Deserialization.flexjson thrpt 1500.054 ops/s -Deserialization.genson thrpt 4221.483 ops/s -Deserialization.gson thrpt 8118.416 ops/s -Deserialization.jackson thrpt 3319.377 ops/s -Deserialization.jackson_afterburner thrpt 5386.486 ops/s -Deserialization.jackson_blackbird thrpt 4429.806 ops/s -Deserialization.jodd thrpt 4908.409 ops/s -Deserialization.jsoniter thrpt 3060.697 ops/s -Deserialization.logansquare thrpt 5536.272 ops/s -Deserialization.moshi thrpt 4842.781 ops/s +Deserialization.avajejsonb thrpt 18514.823 ops/s +Deserialization.avajejsonb_jackson thrpt 12118.395 ops/s +Deserialization.dsljson thrpt 68724.000 ops/s +Deserialization.dsljson_reflection thrpt 51857.392 ops/s +Deserialization.fastjson thrpt 7165.223 ops/s +Deserialization.flexjson thrpt 2827.813 ops/s +Deserialization.genson thrpt 12089.213 ops/s +Deserialization.gson thrpt 1755.411 ops/s +Deserialization.jackson thrpt 8060.423 ops/s +Deserialization.jackson_afterburner thrpt 6971.479 ops/s +Deserialization.jackson_blackbird thrpt 5652.846 ops/s +Deserialization.jodd thrpt 8136.480 ops/s +Deserialization.jsoniter thrpt 7813.794 ops/s +Deserialization.logansquare thrpt 3222.031 ops/s +Deserialization.moshi thrpt 9593.957 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt index 58e6656..3306dcd 100644 --- a/output/clients-deser-1-100.txt +++ b/output/clients-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4586125264306 as seed for Random -468.900 ops/s -Iteration 1: 835.286 ops/s +# Warmup Iteration 1: Using SEED=4505964730809 as seed for Random +618.478 ops/s +Iteration 1: 1620.070 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 835.286 ops/s + 1620.070 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:09 +# Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4599557711620 as seed for Random -434.236 ops/s -Iteration 1: 788.290 ops/s +# Warmup Iteration 1: Using SEED=4519072082283 as seed for Random +470.358 ops/s +Iteration 1: 1442.502 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 788.290 ops/s + 1442.502 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:56 +# Run progress: 13.33% complete, ETA 00:02:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4613098109652 as seed for Random -2546.070 ops/s -Iteration 1: 5578.940 ops/s +# Warmup Iteration 1: Using SEED=4532397939659 as seed for Random +2605.423 ops/s +Iteration 1: 6819.583 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 5578.940 ops/s + 6819.583 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:41 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4626436073868 as seed for Random -2938.329 ops/s -Iteration 1: 4426.430 ops/s +# Warmup Iteration 1: Using SEED=4545647208629 as seed for Random +3635.587 ops/s +Iteration 1: 5389.794 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 4426.430 ops/s + 5389.794 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:28 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4639909610750 as seed for Random -275.347 ops/s -Iteration 1: 538.766 ops/s +# Warmup Iteration 1: Using SEED=4558786710280 as seed for Random +433.140 ops/s +Iteration 1: 475.691 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 538.766 ops/s + 475.691 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:14 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4653314517370 as seed for Random -98.905 ops/s -Iteration 1: 185.448 ops/s +# Warmup Iteration 1: Using SEED=4572029153797 as seed for Random +133.303 ops/s +Iteration 1: 202.892 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 185.448 ops/s + 202.892 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:02:01 +# Run progress: 40.00% complete, ETA 00:01:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4667040541400 as seed for Random -372.952 ops/s -Iteration 1: 929.003 ops/s +# Warmup Iteration 1: Using SEED=4585476629657 as seed for Random +512.576 ops/s +Iteration 1: 1263.176 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 929.003 ops/s + 1263.176 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:47 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4680530422997 as seed for Random -306.504 ops/s -Iteration 1: 398.137 ops/s +# Warmup Iteration 1: Using SEED=4598662407365 as seed for Random +372.372 ops/s +Iteration 1: 1070.384 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 398.137 ops/s + 1070.384 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:34 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4693977845100 as seed for Random -217.187 ops/s -Iteration 1: 332.428 ops/s +# Warmup Iteration 1: Using SEED=4611930590837 as seed for Random +273.294 ops/s +Iteration 1: 582.245 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 332.428 ops/s + 582.245 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:20 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4707575921712 as seed for Random +# Warmup Iteration 1: Using SEED=4625162734127 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -246.456 ops/s -Iteration 1: 435.541 ops/s +306.222 ops/s +Iteration 1: 706.971 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 435.541 ops/s + 706.971 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:07 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4721054893130 as seed for Random -334.505 ops/s -Iteration 1: 447.439 ops/s +# Warmup Iteration 1: Using SEED=4638394167103 as seed for Random +334.262 ops/s +Iteration 1: 900.700 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 447.439 ops/s + 900.700 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:53 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4734552575937 as seed for Random -219.547 ops/s -Iteration 1: 502.220 ops/s +# Warmup Iteration 1: Using SEED=4651600713019 as seed for Random +261.604 ops/s +Iteration 1: 690.167 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 502.220 ops/s + 690.167 ops/s # JMH version: 1.33 @@ -291,20 +291,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:40 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4748005857152 as seed for Random +# Warmup Iteration 1: Using SEED=4664809147350 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -297.230 ops/s -Iteration 1: 548.190 ops/s +861.988 ops/s +Iteration 1: 1441.809 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 548.190 ops/s + 1441.809 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4761478802046 as seed for Random -218.578 ops/s -Iteration 1: 396.599 ops/s +# Warmup Iteration 1: Using SEED=4677966281946 as seed for Random +285.372 ops/s +Iteration 1: 567.935 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 396.599 ops/s + 567.935 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4774881231140 as seed for Random -268.226 ops/s -Iteration 1: 443.888 ops/s +# Warmup Iteration 1: Using SEED=4691148808189 as seed for Random +369.084 ops/s +Iteration 1: 460.430 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 443.888 ops/s + 460.430 ops/s -# Run complete. Total time: 00:03:22 +# Run complete. Total time: 00:03:18 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 835.286 ops/s -Deserialization.avajejsonb_jackson thrpt 788.290 ops/s -Deserialization.dsljson thrpt 5578.940 ops/s -Deserialization.dsljson_reflection thrpt 4426.430 ops/s -Deserialization.fastjson thrpt 538.766 ops/s -Deserialization.flexjson thrpt 185.448 ops/s -Deserialization.genson thrpt 929.003 ops/s -Deserialization.gson thrpt 398.137 ops/s -Deserialization.jackson thrpt 332.428 ops/s -Deserialization.jackson_afterburner thrpt 435.541 ops/s -Deserialization.jackson_blackbird thrpt 447.439 ops/s -Deserialization.jodd thrpt 502.220 ops/s -Deserialization.jsoniter thrpt 548.190 ops/s -Deserialization.logansquare thrpt 396.599 ops/s -Deserialization.moshi thrpt 443.888 ops/s +Deserialization.avajejsonb thrpt 1620.070 ops/s +Deserialization.avajejsonb_jackson thrpt 1442.502 ops/s +Deserialization.dsljson thrpt 6819.583 ops/s +Deserialization.dsljson_reflection thrpt 5389.794 ops/s +Deserialization.fastjson thrpt 475.691 ops/s +Deserialization.flexjson thrpt 202.892 ops/s +Deserialization.genson thrpt 1263.176 ops/s +Deserialization.gson thrpt 1070.384 ops/s +Deserialization.jackson thrpt 582.245 ops/s +Deserialization.jackson_afterburner thrpt 706.971 ops/s +Deserialization.jackson_blackbird thrpt 900.700 ops/s +Deserialization.jodd thrpt 690.167 ops/s +Deserialization.jsoniter thrpt 1441.809 ops/s +Deserialization.logansquare thrpt 567.935 ops/s +Deserialization.moshi thrpt 460.430 ops/s diff --git a/output/clients-deser-1-1000.txt b/output/clients-deser-1-1000.txt index 8bf0bbf..c25575c 100644 --- a/output/clients-deser-1-1000.txt +++ b/output/clients-deser-1-1000.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4997669349521 as seed for Random -64.491 ops/s -Iteration 1: 112.798 ops/s +# Warmup Iteration 1: Using SEED=4909034191211 as seed for Random +93.427 ops/s +Iteration 1: 147.157 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 112.798 ops/s + 147.157 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:15 +# Run progress: 6.67% complete, ETA 00:03:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5011547475708 as seed for Random -36.986 ops/s -Iteration 1: 101.819 ops/s +# Warmup Iteration 1: Using SEED=4922630842662 as seed for Random +44.190 ops/s +Iteration 1: 124.405 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 101.819 ops/s + 124.405 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:03:02 +# Run progress: 13.33% complete, ETA 00:02:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5025673694935 as seed for Random -310.552 ops/s -Iteration 1: 540.098 ops/s +# Warmup Iteration 1: Using SEED=4936419554031 as seed for Random +356.914 ops/s +Iteration 1: 647.402 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 540.098 ops/s + 647.402 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:46 +# Run progress: 20.00% complete, ETA 00:02:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5039251046128 as seed for Random -260.253 ops/s -Iteration 1: 450.541 ops/s +# Warmup Iteration 1: Using SEED=4949796448214 as seed for Random +280.821 ops/s +Iteration 1: 398.315 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 450.541 ops/s + 398.315 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:31 +# Run progress: 26.67% complete, ETA 00:02:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5052890857524 as seed for Random -30.528 ops/s -Iteration 1: 57.387 ops/s +# Warmup Iteration 1: Using SEED=4963210097037 as seed for Random +45.849 ops/s +Iteration 1: 82.307 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 57.387 ops/s + 82.307 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:19 +# Run progress: 33.33% complete, ETA 00:02:16 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5067346597032 as seed for Random -8.476 ops/s -Iteration 1: 15.089 ops/s +# Warmup Iteration 1: Using SEED=4977107884870 as seed for Random +13.269 ops/s +Iteration 1: 20.087 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 15.089 ops/s + 20.087 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:02:09 +# Run progress: 40.00% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5084019826654 as seed for Random -33.767 ops/s -Iteration 1: 94.349 ops/s +# Warmup Iteration 1: Using SEED=4992488100647 as seed for Random +51.683 ops/s +Iteration 1: 121.506 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 94.349 ops/s + 121.506 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:54 +# Run progress: 46.67% complete, ETA 00:01:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5098024325156 as seed for Random -31.341 ops/s -Iteration 1: 74.524 ops/s +# Warmup Iteration 1: Using SEED=5006205318527 as seed for Random +50.080 ops/s +Iteration 1: 117.064 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 74.524 ops/s + 117.064 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:40 +# Run progress: 53.33% complete, ETA 00:01:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5112109030038 as seed for Random -26.077 ops/s -Iteration 1: 38.369 ops/s +# Warmup Iteration 1: Using SEED=5019920744135 as seed for Random +38.804 ops/s +Iteration 1: 99.155 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 38.369 ops/s + 99.155 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:26 +# Run progress: 60.00% complete, ETA 00:01:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5126695450905 as seed for Random +# Warmup Iteration 1: Using SEED=5033885000134 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -41.338 ops/s -Iteration 1: 71.410 ops/s +38.287 ops/s +Iteration 1: 89.089 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 71.410 ops/s + 89.089 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:11 +# Run progress: 66.67% complete, ETA 00:01:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5141060888472 as seed for Random -40.482 ops/s -Iteration 1: 78.640 ops/s +# Warmup Iteration 1: Using SEED=5047805386894 as seed for Random +35.071 ops/s +Iteration 1: 98.505 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 78.640 ops/s + 98.505 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:57 +# Run progress: 73.33% complete, ETA 00:00:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5155361929862 as seed for Random -33.796 ops/s -Iteration 1: 64.073 ops/s +# Warmup Iteration 1: Using SEED=5061762859316 as seed for Random +35.144 ops/s +Iteration 1: 81.039 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 64.073 ops/s + 81.039 ops/s # JMH version: 1.33 @@ -291,20 +291,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:42 +# Run progress: 80.00% complete, ETA 00:00:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5169551430253 as seed for Random +# Warmup Iteration 1: Using SEED=5075546420642 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -39.513 ops/s -Iteration 1: 112.291 ops/s +43.522 ops/s +Iteration 1: 75.612 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 112.291 ops/s + 75.612 ops/s # JMH version: 1.33 @@ -319,15 +319,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:28 +# Run progress: 86.67% complete, ETA 00:00:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5183758556840 as seed for Random -38.349 ops/s -Iteration 1: 47.088 ops/s +# Warmup Iteration 1: Using SEED=5089538403361 as seed for Random +40.925 ops/s +Iteration 1: 117.096 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 47.088 ops/s + 117.096 ops/s # JMH version: 1.33 @@ -342,18 +342,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 93.33% complete, ETA 00:00:14 +# Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5198256842239 as seed for Random -29.642 ops/s -Iteration 1: 76.449 ops/s +# Warmup Iteration 1: Using SEED=5103350303922 as seed for Random +47.670 ops/s +Iteration 1: 112.354 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 76.449 ops/s + 112.354 ops/s -# Run complete. Total time: 00:03:34 +# Run complete. Total time: 00:03:28 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 112.798 ops/s -Deserialization.avajejsonb_jackson thrpt 101.819 ops/s -Deserialization.dsljson thrpt 540.098 ops/s -Deserialization.dsljson_reflection thrpt 450.541 ops/s -Deserialization.fastjson thrpt 57.387 ops/s -Deserialization.flexjson thrpt 15.089 ops/s -Deserialization.genson thrpt 94.349 ops/s -Deserialization.gson thrpt 74.524 ops/s -Deserialization.jackson thrpt 38.369 ops/s -Deserialization.jackson_afterburner thrpt 71.410 ops/s -Deserialization.jackson_blackbird thrpt 78.640 ops/s -Deserialization.jodd thrpt 64.073 ops/s -Deserialization.jsoniter thrpt 112.291 ops/s -Deserialization.logansquare thrpt 47.088 ops/s -Deserialization.moshi thrpt 76.449 ops/s +Deserialization.avajejsonb thrpt 147.157 ops/s +Deserialization.avajejsonb_jackson thrpt 124.405 ops/s +Deserialization.dsljson thrpt 647.402 ops/s +Deserialization.dsljson_reflection thrpt 398.315 ops/s +Deserialization.fastjson thrpt 82.307 ops/s +Deserialization.flexjson thrpt 20.087 ops/s +Deserialization.genson thrpt 121.506 ops/s +Deserialization.gson thrpt 117.064 ops/s +Deserialization.jackson thrpt 99.155 ops/s +Deserialization.jackson_afterburner thrpt 89.089 ops/s +Deserialization.jackson_blackbird thrpt 98.505 ops/s +Deserialization.jodd thrpt 81.039 ops/s +Deserialization.jsoniter thrpt 75.612 ops/s +Deserialization.logansquare thrpt 117.096 ops/s +Deserialization.moshi thrpt 112.354 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt index 49d4183..074abf4 100644 --- a/output/clients-ser-1-1.txt +++ b/output/clients-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3578391870372 as seed for Random -260912.062 ops/s -Iteration 1: 399410.143 ops/s +# Warmup Iteration 1: Using SEED=3513814505922 as seed for Random +307347.245 ops/s +Iteration 1: 443773.292 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 399410.143 ops/s + 443773.292 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:07 +# Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3591747466630 as seed for Random -210371.403 ops/s -Iteration 1: 322305.043 ops/s +# Warmup Iteration 1: Using SEED=3527003366270 as seed for Random +210544.212 ops/s +Iteration 1: 325864.698 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 322305.043 ops/s + 325864.698 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:53 +# Run progress: 13.33% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3605047373461 as seed for Random -552488.145 ops/s -Iteration 1: 693834.882 ops/s +# Warmup Iteration 1: Using SEED=3540329263806 as seed for Random +665586.987 ops/s +Iteration 1: 772485.544 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 693834.882 ops/s + 772485.544 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:40 +# Run progress: 20.00% complete, ETA 00:02:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3618349196330 as seed for Random -454447.897 ops/s -Iteration 1: 539507.745 ops/s +# Warmup Iteration 1: Using SEED=3553517812799 as seed for Random +455602.500 ops/s +Iteration 1: 601390.696 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 539507.745 ops/s + 601390.696 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:26 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3631664102416 as seed for Random -96520.369 ops/s -Iteration 1: 338885.092 ops/s +# Warmup Iteration 1: Using SEED=3566674435234 as seed for Random +139477.605 ops/s +Iteration 1: 253785.093 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 338885.092 ops/s + 253785.093 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:13 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3644981701162 as seed for Random -2191.161 ops/s -Iteration 1: 1319.129 ops/s +# Warmup Iteration 1: Using SEED=3579857316205 as seed for Random +1989.825 ops/s +Iteration 1: 1442.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1319.129 ops/s + 1442.166 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:02:00 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3658347023541 as seed for Random -143355.276 ops/s -Iteration 1: 194368.812 ops/s +# Warmup Iteration 1: Using SEED=3593049531280 as seed for Random +192287.237 ops/s +Iteration 1: 242552.991 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 194368.812 ops/s + 242552.991 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:46 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3671712813628 as seed for Random -101516.041 ops/s -Iteration 1: 128332.791 ops/s +# Warmup Iteration 1: Using SEED=3606210384531 as seed for Random +108157.691 ops/s +Iteration 1: 157715.586 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 128332.791 ops/s + 157715.586 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:33 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3685120892190 as seed for Random -126063.991 ops/s -Iteration 1: 262659.012 ops/s +# Warmup Iteration 1: Using SEED=3619329481364 as seed for Random +319677.430 ops/s +Iteration 1: 485495.483 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 262659.012 ops/s + 485495.483 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:20 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3698494353303 as seed for Random +# Warmup Iteration 1: Using SEED=3632533388448 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -134101.746 ops/s -Iteration 1: 256018.136 ops/s +224763.049 ops/s +Iteration 1: 356561.107 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 256018.136 ops/s + 356561.107 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3711849127446 as seed for Random -157662.330 ops/s -Iteration 1: 238203.657 ops/s +# Warmup Iteration 1: Using SEED=3645654167449 as seed for Random +338356.753 ops/s +Iteration 1: 492163.536 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 238203.657 ops/s + 492163.536 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:53 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3725247704513 as seed for Random -25149.739 ops/s -Iteration 1: 45022.226 ops/s +# Warmup Iteration 1: Using SEED=3658816241802 as seed for Random +61750.305 ops/s +Iteration 1: 131293.963 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 45022.226 ops/s + 131293.963 ops/s # JMH version: 1.33 @@ -291,20 +291,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:40 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3738599243189 as seed for Random +# Warmup Iteration 1: Using SEED=3671966494105 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -388575.779 ops/s -Iteration 1: 471978.846 ops/s +314879.482 ops/s +Iteration 1: 456784.425 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 471978.846 ops/s + 456784.425 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3751945379002 as seed for Random -246376.707 ops/s -Iteration 1: 394507.124 ops/s +# Warmup Iteration 1: Using SEED=3685126495487 as seed for Random +162621.230 ops/s +Iteration 1: 331235.520 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 394507.124 ops/s + 331235.520 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3765245418546 as seed for Random -147921.155 ops/s -Iteration 1: 197596.887 ops/s +# Warmup Iteration 1: Using SEED=3698216467140 as seed for Random +177657.633 ops/s +Iteration 1: 209234.253 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 197596.887 ops/s + 209234.253 ops/s -# Run complete. Total time: 00:03:20 +# Run complete. Total time: 00:03:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 399410.143 ops/s -Serialization.avajejsonb_jackson thrpt 322305.043 ops/s -Serialization.dsljson thrpt 693834.882 ops/s -Serialization.dsljson_reflection thrpt 539507.745 ops/s -Serialization.fastjson thrpt 338885.092 ops/s -Serialization.flexjson thrpt 1319.129 ops/s -Serialization.genson thrpt 194368.812 ops/s -Serialization.gson thrpt 128332.791 ops/s -Serialization.jackson thrpt 262659.012 ops/s -Serialization.jackson_afterburner thrpt 256018.136 ops/s -Serialization.jackson_blackbird thrpt 238203.657 ops/s -Serialization.jodd thrpt 45022.226 ops/s -Serialization.jsoniter thrpt 471978.846 ops/s -Serialization.logansquare thrpt 394507.124 ops/s -Serialization.moshi thrpt 197596.887 ops/s +Serialization.avajejsonb thrpt 443773.292 ops/s +Serialization.avajejsonb_jackson thrpt 325864.698 ops/s +Serialization.dsljson thrpt 772485.544 ops/s +Serialization.dsljson_reflection thrpt 601390.696 ops/s +Serialization.fastjson thrpt 253785.093 ops/s +Serialization.flexjson thrpt 1442.166 ops/s +Serialization.genson thrpt 242552.991 ops/s +Serialization.gson thrpt 157715.586 ops/s +Serialization.jackson thrpt 485495.483 ops/s +Serialization.jackson_afterburner thrpt 356561.107 ops/s +Serialization.jackson_blackbird thrpt 492163.536 ops/s +Serialization.jodd thrpt 131293.963 ops/s +Serialization.jsoniter thrpt 456784.425 ops/s +Serialization.logansquare thrpt 331235.520 ops/s +Serialization.moshi thrpt 209234.253 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt index e975c8d..64bf979 100644 --- a/output/clients-ser-1-10.txt +++ b/output/clients-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3980764013002 as seed for Random -20435.193 ops/s -Iteration 1: 32844.705 ops/s +# Warmup Iteration 1: Using SEED=3910143623877 as seed for Random +27781.443 ops/s +Iteration 1: 34475.480 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 32844.705 ops/s + 34475.480 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:07 +# Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3994085652048 as seed for Random -18718.768 ops/s -Iteration 1: 27759.383 ops/s +# Warmup Iteration 1: Using SEED=3923329752149 as seed for Random +24392.865 ops/s +Iteration 1: 33280.439 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 27759.383 ops/s + 33280.439 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:54 +# Run progress: 13.33% complete, ETA 00:02:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4007490317048 as seed for Random -57547.529 ops/s -Iteration 1: 82143.452 ops/s +# Warmup Iteration 1: Using SEED=3936539201871 as seed for Random +81695.626 ops/s +Iteration 1: 99342.360 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 82143.452 ops/s + 99342.360 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:40 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4020865638698 as seed for Random -39731.844 ops/s -Iteration 1: 57137.854 ops/s +# Warmup Iteration 1: Using SEED=3949735498715 as seed for Random +70720.765 ops/s +Iteration 1: 78202.647 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 57137.854 ops/s + 78202.647 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:27 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4034193061073 as seed for Random -9539.179 ops/s -Iteration 1: 18494.694 ops/s +# Warmup Iteration 1: Using SEED=3962965882032 as seed for Random +6907.632 ops/s +Iteration 1: 26017.387 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 18494.694 ops/s + 26017.387 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:13 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4047564912346 as seed for Random -491.448 ops/s -Iteration 1: 326.298 ops/s +# Warmup Iteration 1: Using SEED=3976152033008 as seed for Random +564.514 ops/s +Iteration 1: 394.053 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 326.298 ops/s + 394.053 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:02:00 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4061133690565 as seed for Random -15983.481 ops/s -Iteration 1: 22394.639 ops/s +# Warmup Iteration 1: Using SEED=3989373418138 as seed for Random +20058.461 ops/s +Iteration 1: 26982.590 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 22394.639 ops/s + 26982.590 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:47 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4074461948082 as seed for Random -4538.727 ops/s -Iteration 1: 14225.561 ops/s +# Warmup Iteration 1: Using SEED=4002599167686 as seed for Random +10834.448 ops/s +Iteration 1: 16215.155 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 14225.561 ops/s + 16215.155 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:33 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4087844659822 as seed for Random -13452.880 ops/s -Iteration 1: 22436.382 ops/s +# Warmup Iteration 1: Using SEED=4015752172096 as seed for Random +18577.698 ops/s +Iteration 1: 28796.919 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 22436.382 ops/s + 28796.919 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:20 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4101147450599 as seed for Random +# Warmup Iteration 1: Using SEED=4028914888719 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -12561.783 ops/s -Iteration 1: 24179.482 ops/s +19105.818 ops/s +Iteration 1: 26311.853 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 24179.482 ops/s + 26311.853 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4114486333964 as seed for Random -15267.631 ops/s -Iteration 1: 23050.463 ops/s +# Warmup Iteration 1: Using SEED=4042082424664 as seed for Random +12176.059 ops/s +Iteration 1: 23626.900 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 23050.463 ops/s + 23626.900 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:53 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4127816383791 as seed for Random -3504.421 ops/s -Iteration 1: 9663.520 ops/s +# Warmup Iteration 1: Using SEED=4055301520175 as seed for Random +3450.416 ops/s +Iteration 1: 4447.542 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 9663.520 ops/s + 4447.542 ops/s # JMH version: 1.33 @@ -291,20 +291,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:40 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4141153817882 as seed for Random +# Warmup Iteration 1: Using SEED=4068453990220 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -21419.751 ops/s -Iteration 1: 30822.636 ops/s +30807.660 ops/s +Iteration 1: 38862.533 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 30822.636 ops/s + 38862.533 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4154496630427 as seed for Random -15315.073 ops/s -Iteration 1: 31653.122 ops/s +# Warmup Iteration 1: Using SEED=4081583834027 as seed for Random +17694.717 ops/s +Iteration 1: 40364.641 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 31653.122 ops/s + 40364.641 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4167971563630 as seed for Random -8118.134 ops/s -Iteration 1: 16482.783 ops/s +# Warmup Iteration 1: Using SEED=4094729753371 as seed for Random +14014.897 ops/s +Iteration 1: 20946.427 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 16482.783 ops/s + 20946.427 ops/s -# Run complete. Total time: 00:03:20 +# Run complete. Total time: 00:03:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 32844.705 ops/s -Serialization.avajejsonb_jackson thrpt 27759.383 ops/s -Serialization.dsljson thrpt 82143.452 ops/s -Serialization.dsljson_reflection thrpt 57137.854 ops/s -Serialization.fastjson thrpt 18494.694 ops/s -Serialization.flexjson thrpt 326.298 ops/s -Serialization.genson thrpt 22394.639 ops/s -Serialization.gson thrpt 14225.561 ops/s -Serialization.jackson thrpt 22436.382 ops/s -Serialization.jackson_afterburner thrpt 24179.482 ops/s -Serialization.jackson_blackbird thrpt 23050.463 ops/s -Serialization.jodd thrpt 9663.520 ops/s -Serialization.jsoniter thrpt 30822.636 ops/s -Serialization.logansquare thrpt 31653.122 ops/s -Serialization.moshi thrpt 16482.783 ops/s +Serialization.avajejsonb thrpt 34475.480 ops/s +Serialization.avajejsonb_jackson thrpt 33280.439 ops/s +Serialization.dsljson thrpt 99342.360 ops/s +Serialization.dsljson_reflection thrpt 78202.647 ops/s +Serialization.fastjson thrpt 26017.387 ops/s +Serialization.flexjson thrpt 394.053 ops/s +Serialization.genson thrpt 26982.590 ops/s +Serialization.gson thrpt 16215.155 ops/s +Serialization.jackson thrpt 28796.919 ops/s +Serialization.jackson_afterburner thrpt 26311.853 ops/s +Serialization.jackson_blackbird thrpt 23626.900 ops/s +Serialization.jodd thrpt 4447.542 ops/s +Serialization.jsoniter thrpt 38862.533 ops/s +Serialization.logansquare thrpt 40364.641 ops/s +Serialization.moshi thrpt 20946.427 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt index d82830a..78da34c 100644 --- a/output/clients-ser-1-100.txt +++ b/output/clients-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4383602076335 as seed for Random -2292.546 ops/s -Iteration 1: 3136.320 ops/s +# Warmup Iteration 1: Using SEED=4307032301248 as seed for Random +3140.290 ops/s +Iteration 1: 3685.130 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 3136.320 ops/s + 3685.130 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:09 +# Run progress: 6.67% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4397070658865 as seed for Random -1705.041 ops/s -Iteration 1: 2442.874 ops/s +# Warmup Iteration 1: Using SEED=4320238889671 as seed for Random +2704.532 ops/s +Iteration 1: 3941.913 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 2442.874 ops/s + 3941.913 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:55 +# Run progress: 13.33% complete, ETA 00:02:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4410603951337 as seed for Random -5006.120 ops/s -Iteration 1: 7621.618 ops/s +# Warmup Iteration 1: Using SEED=4333470036614 as seed for Random +6832.257 ops/s +Iteration 1: 8624.038 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 7621.618 ops/s + 8624.038 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:41 +# Run progress: 20.00% complete, ETA 00:02:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4423994421166 as seed for Random -5509.401 ops/s -Iteration 1: 6162.601 ops/s +# Warmup Iteration 1: Using SEED=4346655502659 as seed for Random +6465.349 ops/s +Iteration 1: 7106.788 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 6162.601 ops/s + 7106.788 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:28 +# Run progress: 26.67% complete, ETA 00:02:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4437405957661 as seed for Random -1245.548 ops/s -Iteration 1: 2065.263 ops/s +# Warmup Iteration 1: Using SEED=4359813171497 as seed for Random +1262.981 ops/s +Iteration 1: 1960.856 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 2065.263 ops/s + 1960.856 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:14 +# Run progress: 33.33% complete, ETA 00:02:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4450839010874 as seed for Random -109.085 ops/s -Iteration 1: 96.926 ops/s +# Warmup Iteration 1: Using SEED=4373025371166 as seed for Random +111.708 ops/s +Iteration 1: 130.938 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 96.926 ops/s + 130.938 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:02:01 +# Run progress: 40.00% complete, ETA 00:01:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4464669326264 as seed for Random -1853.245 ops/s -Iteration 1: 2428.365 ops/s +# Warmup Iteration 1: Using SEED=4386512412639 as seed for Random +727.359 ops/s +Iteration 1: 2631.568 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 2428.365 ops/s + 2631.568 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:48 +# Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4478077643452 as seed for Random -693.990 ops/s -Iteration 1: 1270.357 ops/s +# Warmup Iteration 1: Using SEED=4399650236065 as seed for Random +1309.620 ops/s +Iteration 1: 1723.097 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1270.357 ops/s + 1723.097 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:34 +# Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4491504978572 as seed for Random -1526.155 ops/s -Iteration 1: 2307.451 ops/s +# Warmup Iteration 1: Using SEED=4412945861290 as seed for Random +1808.050 ops/s +Iteration 1: 2788.929 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 2307.451 ops/s + 2788.929 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:20 +# Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4504922285883 as seed for Random +# Warmup Iteration 1: Using SEED=4426215799036 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -1513.528 ops/s -Iteration 1: 2367.124 ops/s +1889.138 ops/s +Iteration 1: 2823.417 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 2367.124 ops/s + 2823.417 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:07 +# Run progress: 66.67% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4518343757871 as seed for Random -1539.550 ops/s -Iteration 1: 2192.493 ops/s +# Warmup Iteration 1: Using SEED=4439338444701 as seed for Random +1938.468 ops/s +Iteration 1: 2772.337 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 2192.493 ops/s + 2772.337 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:53 +# Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4531717451287 as seed for Random -337.453 ops/s -Iteration 1: 962.091 ops/s +# Warmup Iteration 1: Using SEED=4452526955327 as seed for Random +859.507 ops/s +Iteration 1: 1073.693 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 962.091 ops/s + 1073.693 ops/s # JMH version: 1.33 @@ -291,20 +291,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:40 +# Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4545106603643 as seed for Random +# Warmup Iteration 1: Using SEED=4465752270800 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -2245.718 ops/s -Iteration 1: 3137.093 ops/s +2749.906 ops/s +Iteration 1: 3921.124 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 3137.093 ops/s + 3921.124 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4558495047549 as seed for Random -1330.093 ops/s -Iteration 1: 2943.671 ops/s +# Warmup Iteration 1: Using SEED=4478922134813 as seed for Random +2035.498 ops/s +Iteration 1: 3885.565 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 2943.671 ops/s + 3885.565 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4571865076818 as seed for Random -998.331 ops/s -Iteration 1: 1678.639 ops/s +# Warmup Iteration 1: Using SEED=4492111351941 as seed for Random +1664.138 ops/s +Iteration 1: 2165.214 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 1678.639 ops/s + 2165.214 ops/s -# Run complete. Total time: 00:03:21 +# Run complete. Total time: 00:03:18 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 3136.320 ops/s -Serialization.avajejsonb_jackson thrpt 2442.874 ops/s -Serialization.dsljson thrpt 7621.618 ops/s -Serialization.dsljson_reflection thrpt 6162.601 ops/s -Serialization.fastjson thrpt 2065.263 ops/s -Serialization.flexjson thrpt 96.926 ops/s -Serialization.genson thrpt 2428.365 ops/s -Serialization.gson thrpt 1270.357 ops/s -Serialization.jackson thrpt 2307.451 ops/s -Serialization.jackson_afterburner thrpt 2367.124 ops/s -Serialization.jackson_blackbird thrpt 2192.493 ops/s -Serialization.jodd thrpt 962.091 ops/s -Serialization.jsoniter thrpt 3137.093 ops/s -Serialization.logansquare thrpt 2943.671 ops/s -Serialization.moshi thrpt 1678.639 ops/s +Serialization.avajejsonb thrpt 3685.130 ops/s +Serialization.avajejsonb_jackson thrpt 3941.913 ops/s +Serialization.dsljson thrpt 8624.038 ops/s +Serialization.dsljson_reflection thrpt 7106.788 ops/s +Serialization.fastjson thrpt 1960.856 ops/s +Serialization.flexjson thrpt 130.938 ops/s +Serialization.genson thrpt 2631.568 ops/s +Serialization.gson thrpt 1723.097 ops/s +Serialization.jackson thrpt 2788.929 ops/s +Serialization.jackson_afterburner thrpt 2823.417 ops/s +Serialization.jackson_blackbird thrpt 2772.337 ops/s +Serialization.jodd thrpt 1073.693 ops/s +Serialization.jsoniter thrpt 3921.124 ops/s +Serialization.logansquare thrpt 3885.565 ops/s +Serialization.moshi thrpt 2165.214 ops/s diff --git a/output/clients-ser-1-1000.txt b/output/clients-ser-1-1000.txt index d95fd35..467271c 100644 --- a/output/clients-ser-1-1000.txt +++ b/output/clients-ser-1-1000.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4789174516296 as seed for Random -232.673 ops/s -Iteration 1: 309.178 ops/s +# Warmup Iteration 1: Using SEED=4704993212402 as seed for Random +289.045 ops/s +Iteration 1: 362.800 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 309.178 ops/s + 362.800 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:11 +# Run progress: 6.67% complete, ETA 00:03:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4802800619605 as seed for Random -169.324 ops/s -Iteration 1: 245.463 ops/s +# Warmup Iteration 1: Using SEED=4718409345683 as seed for Random +210.650 ops/s +Iteration 1: 295.595 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 245.463 ops/s + 295.595 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:57 +# Run progress: 13.33% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4816538083344 as seed for Random -530.345 ops/s -Iteration 1: 753.456 ops/s +# Warmup Iteration 1: Using SEED=4731796118409 as seed for Random +769.119 ops/s +Iteration 1: 923.070 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 753.456 ops/s + 923.070 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:43 +# Run progress: 20.00% complete, ETA 00:02:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4830062674855 as seed for Random -464.549 ops/s -Iteration 1: 567.725 ops/s +# Warmup Iteration 1: Using SEED=4745107768441 as seed for Random +662.036 ops/s +Iteration 1: 722.166 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 567.725 ops/s + 722.166 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:30 +# Run progress: 26.67% complete, ETA 00:02:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4843665871930 as seed for Random -90.063 ops/s -Iteration 1: 132.383 ops/s +# Warmup Iteration 1: Using SEED=4758423861587 as seed for Random +116.155 ops/s +Iteration 1: 160.640 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 132.383 ops/s + 160.640 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:16 +# Run progress: 33.33% complete, ETA 00:02:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4857541922555 as seed for Random -19.665 ops/s -Iteration 1: 31.474 ops/s +# Warmup Iteration 1: Using SEED=4772067357472 as seed for Random +21.720 ops/s +Iteration 1: 39.234 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 31.474 ops/s + 39.234 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:02:05 +# Run progress: 40.00% complete, ETA 00:02:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4872776771023 as seed for Random -168.931 ops/s -Iteration 1: 223.905 ops/s +# Warmup Iteration 1: Using SEED=4786476488448 as seed for Random +195.437 ops/s +Iteration 1: 267.410 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 223.905 ops/s + 267.410 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:51 +# Run progress: 46.67% complete, ETA 00:01:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4886433710445 as seed for Random -84.171 ops/s -Iteration 1: 122.896 ops/s +# Warmup Iteration 1: Using SEED=4799955717964 as seed for Random +134.841 ops/s +Iteration 1: 179.002 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 122.896 ops/s + 179.002 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:37 +# Run progress: 53.33% complete, ETA 00:01:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4900420180860 as seed for Random -132.883 ops/s -Iteration 1: 209.574 ops/s +# Warmup Iteration 1: Using SEED=4813481292775 as seed for Random +187.614 ops/s +Iteration 1: 267.336 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 209.574 ops/s + 267.336 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:23 +# Run progress: 60.00% complete, ETA 00:01:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4914153056171 as seed for Random +# Warmup Iteration 1: Using SEED=4826989418863 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -121.466 ops/s -Iteration 1: 189.130 ops/s +164.891 ops/s +Iteration 1: 244.505 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 189.130 ops/s + 244.505 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:09 +# Run progress: 66.67% complete, ETA 00:01:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4927812745928 as seed for Random -105.907 ops/s -Iteration 1: 172.511 ops/s +# Warmup Iteration 1: Using SEED=4840501895114 as seed for Random +166.635 ops/s +Iteration 1: 227.573 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 172.511 ops/s + 227.573 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:55 +# Run progress: 73.33% complete, ETA 00:00:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4941635059369 as seed for Random -38.453 ops/s -Iteration 1: 91.212 ops/s +# Warmup Iteration 1: Using SEED=4854098365302 as seed for Random +74.711 ops/s +Iteration 1: 107.786 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 91.212 ops/s + 107.786 ops/s # JMH version: 1.33 @@ -291,20 +291,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 80.00% complete, ETA 00:00:41 +# Run progress: 80.00% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4955663177082 as seed for Random +# Warmup Iteration 1: Using SEED=4867827389580 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -220.881 ops/s -Iteration 1: 326.951 ops/s +204.323 ops/s +Iteration 1: 368.938 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 326.951 ops/s + 368.938 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4969343202121 as seed for Random -176.003 ops/s -Iteration 1: 261.614 ops/s +# Warmup Iteration 1: Using SEED=4881365299926 as seed for Random +231.481 ops/s +Iteration 1: 368.759 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 261.614 ops/s + 368.759 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4982999166724 as seed for Random -122.102 ops/s -Iteration 1: 164.984 ops/s +# Warmup Iteration 1: Using SEED=4894784495691 as seed for Random +152.767 ops/s +Iteration 1: 202.999 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 164.984 ops/s + 202.999 ops/s -# Run complete. Total time: 00:03:27 +# Run complete. Total time: 00:03:23 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 309.178 ops/s -Serialization.avajejsonb_jackson thrpt 245.463 ops/s -Serialization.dsljson thrpt 753.456 ops/s -Serialization.dsljson_reflection thrpt 567.725 ops/s -Serialization.fastjson thrpt 132.383 ops/s -Serialization.flexjson thrpt 31.474 ops/s -Serialization.genson thrpt 223.905 ops/s -Serialization.gson thrpt 122.896 ops/s -Serialization.jackson thrpt 209.574 ops/s -Serialization.jackson_afterburner thrpt 189.130 ops/s -Serialization.jackson_blackbird thrpt 172.511 ops/s -Serialization.jodd thrpt 91.212 ops/s -Serialization.jsoniter thrpt 326.951 ops/s -Serialization.logansquare thrpt 261.614 ops/s -Serialization.moshi thrpt 164.984 ops/s +Serialization.avajejsonb thrpt 362.800 ops/s +Serialization.avajejsonb_jackson thrpt 295.595 ops/s +Serialization.dsljson thrpt 923.070 ops/s +Serialization.dsljson_reflection thrpt 722.166 ops/s +Serialization.fastjson thrpt 160.640 ops/s +Serialization.flexjson thrpt 39.234 ops/s +Serialization.genson thrpt 267.410 ops/s +Serialization.gson thrpt 179.002 ops/s +Serialization.jackson thrpt 267.336 ops/s +Serialization.jackson_afterburner thrpt 244.505 ops/s +Serialization.jackson_blackbird thrpt 227.573 ops/s +Serialization.jodd thrpt 107.786 ops/s +Serialization.jsoniter thrpt 368.938 ops/s +Serialization.logansquare thrpt 368.759 ops/s +Serialization.moshi thrpt 202.999 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt index 0ee60fd..872359b 100644 --- a/output/users-deser-1-1.txt +++ b/output/users-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=529993268425 as seed for Random -294576.367 ops/s -Iteration 1: 459163.113 ops/s +# Warmup Iteration 1: Using SEED=520364421458 as seed for Random +422438.373 ops/s +Iteration 1: 606279.212 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 459163.113 ops/s + 606279.212 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:06 +# Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=543265131870 as seed for Random -146597.109 ops/s -Iteration 1: 244401.207 ops/s +# Warmup Iteration 1: Using SEED=533507105385 as seed for Random +168883.753 ops/s +Iteration 1: 366324.492 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 244401.207 ops/s + 366324.492 ops/s # JMH version: 1.33 @@ -56,12 +56,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:53 +# Run progress: 6.06% complete, ETA 00:06:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=556615781226 as seed for Random +# Warmup Iteration 1: Using SEED=546700622384 as seed for Random -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -79,19 +79,14 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -104,14 +99,19 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 18 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:38 +# Run progress: 9.09% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=557836962796 as seed for Random -324845.501 ops/s -Iteration 1: 507154.626 ops/s +# Warmup Iteration 1: Using SEED=547706075742 as seed for Random +342336.047 ops/s +Iteration 1: 590275.874 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 507154.626 ops/s + 590275.874 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:59 +# Run progress: 12.12% complete, ETA 00:04:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=571210645223 as seed for Random -368803.256 ops/s -Iteration 1: 461716.761 ops/s +# Warmup Iteration 1: Using SEED=560836343012 as seed for Random +467648.923 ops/s +Iteration 1: 535523.236 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 461716.761 ops/s + 535523.236 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:05 +# Run progress: 15.15% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=584524939788 as seed for Random -42430.576 ops/s -Iteration 1: 153718.263 ops/s +# Warmup Iteration 1: Using SEED=574004808487 as seed for Random +128460.201 ops/s +Iteration 1: 213666.726 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 153718.263 ops/s + 213666.726 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:05 +# Run progress: 18.18% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=597794446693 as seed for Random -13345.256 ops/s -Iteration 1: 37973.542 ops/s +# Warmup Iteration 1: Using SEED=587052840854 as seed for Random +9406.297 ops/s +Iteration 1: 13507.810 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 37973.542 ops/s + 13507.810 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:01 +# Run progress: 21.21% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=611179083824 as seed for Random -150369.563 ops/s -Iteration 1: 186668.232 ops/s +# Warmup Iteration 1: Using SEED=600152576927 as seed for Random +140777.033 ops/s +Iteration 1: 228764.874 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 186668.232 ops/s + 228764.874 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:55 +# Run progress: 24.24% complete, ETA 00:04:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=624431359667 as seed for Random -101592.907 ops/s -Iteration 1: 187553.344 ops/s +# Warmup Iteration 1: Using SEED=613304254218 as seed for Random +125899.779 ops/s +Iteration 1: 203811.986 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 187553.344 ops/s + 203811.986 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:47 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=637714860259 as seed for Random -167276.062 ops/s -Iteration 1: 276971.289 ops/s +# Warmup Iteration 1: Using SEED=626455603712 as seed for Random +222717.539 ops/s +Iteration 1: 372814.370 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 276971.289 ops/s + 372814.370 ops/s # JMH version: 1.33 @@ -548,20 +548,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:38 +# Run progress: 30.30% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=651042839988 as seed for Random +# Warmup Iteration 1: Using SEED=639575429473 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -263353.672 ops/s -Iteration 1: 350567.188 ops/s +283272.765 ops/s +Iteration 1: 392770.953 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 350567.188 ops/s + 392770.953 ops/s # JMH version: 1.33 @@ -576,15 +576,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:28 +# Run progress: 33.33% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=664334940964 as seed for Random -220593.846 ops/s -Iteration 1: 346416.837 ops/s +# Warmup Iteration 1: Using SEED=652658342870 as seed for Random +249779.152 ops/s +Iteration 1: 394580.438 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 346416.837 ops/s + 394580.438 ops/s # JMH version: 1.33 @@ -599,15 +599,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:18 +# Run progress: 36.36% complete, ETA 00:04:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=677664868508 as seed for Random -95311.268 ops/s -Iteration 1: 134548.848 ops/s +# Warmup Iteration 1: Using SEED=665753369006 as seed for Random +114018.236 ops/s +Iteration 1: 155646.827 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 134548.848 ops/s + 155646.827 ops/s # JMH version: 1.33 @@ -622,15 +622,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:07 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=691008103733 as seed for Random -28314.292 ops/s -Iteration 1: 55740.907 ops/s +# Warmup Iteration 1: Using SEED=678800250932 as seed for Random +51611.098 ops/s +Iteration 1: 73895.548 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 55740.907 ops/s + 73895.548 ops/s # JMH version: 1.33 @@ -645,20 +645,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:56 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=704265006773 as seed for Random +# Warmup Iteration 1: Using SEED=691894673417 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -258709.536 ops/s -Iteration 1: 416830.302 ops/s +249752.290 ops/s +Iteration 1: 448379.128 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 416830.302 ops/s + 448379.128 ops/s # JMH version: 1.33 @@ -673,20 +673,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:45 +# Run progress: 45.45% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=717566956277 as seed for Random +# Warmup Iteration 1: Using SEED=704980659536 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -151620.825 ops/s -Iteration 1: 228545.761 ops/s +147749.690 ops/s +Iteration 1: 188885.650 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 228545.761 ops/s + 188885.650 ops/s # JMH version: 1.33 @@ -701,15 +701,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:33 +# Run progress: 48.48% complete, ETA 00:03:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=730830263782 as seed for Random -104409.853 ops/s -Iteration 1: 157757.663 ops/s +# Warmup Iteration 1: Using SEED=718108215937 as seed for Random +115207.682 ops/s +Iteration 1: 190480.341 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 157757.663 ops/s + 190480.341 ops/s # JMH version: 1.33 @@ -724,15 +724,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:21 +# Run progress: 51.52% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=744371188087 as seed for Random -145140.282 ops/s -Iteration 1: 168446.039 ops/s +# Warmup Iteration 1: Using SEED=731202075045 as seed for Random +146257.055 ops/s +Iteration 1: 250993.043 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 168446.039 ops/s + 250993.043 ops/s # JMH version: 1.33 @@ -747,15 +747,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:09 +# Run progress: 54.55% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=757671599073 as seed for Random -19471.649 ops/s -Iteration 1: 43517.229 ops/s +# Warmup Iteration 1: Using SEED=744296894900 as seed for Random +31349.072 ops/s +Iteration 1: 55975.623 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 43517.229 ops/s + 55975.623 ops/s # JMH version: 1.33 @@ -770,15 +770,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:57 +# Run progress: 57.58% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=770944147712 as seed for Random -131122.515 ops/s -Iteration 1: 202143.491 ops/s +# Warmup Iteration 1: Using SEED=757395715301 as seed for Random +194179.871 ops/s +Iteration 1: 249518.340 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 202143.491 ops/s + 249518.340 ops/s # JMH version: 1.33 @@ -793,15 +793,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:45 +# Run progress: 60.61% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=784177533072 as seed for Random -65447.141 ops/s -Iteration 1: 157025.789 ops/s +# Warmup Iteration 1: Using SEED=770507673991 as seed for Random +116954.968 ops/s +Iteration 1: 197696.700 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 157025.789 ops/s + 197696.700 ops/s # JMH version: 1.33 @@ -816,15 +816,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:32 +# Run progress: 63.64% complete, ETA 00:02:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=797538740588 as seed for Random -205588.112 ops/s -Iteration 1: 297666.187 ops/s +# Warmup Iteration 1: Using SEED=783675965903 as seed for Random +232309.636 ops/s +Iteration 1: 362799.112 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 297666.187 ops/s + 362799.112 ops/s # JMH version: 1.33 @@ -839,15 +839,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:20 +# Run progress: 66.67% complete, ETA 00:02:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=810847615015 as seed for Random -14783.628 ops/s -Iteration 1: 24045.673 ops/s +# Warmup Iteration 1: Using SEED=796815497244 as seed for Random +19661.121 ops/s +Iteration 1: 28587.940 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 24045.673 ops/s + 28587.940 ops/s # JMH version: 1.33 @@ -862,15 +862,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:07 +# Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=824076840900 as seed for Random -32827.070 ops/s -Iteration 1: 63055.564 ops/s +# Warmup Iteration 1: Using SEED=809860602050 as seed for Random +12435.433 ops/s +Iteration 1: 16429.863 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 63055.564 ops/s + 16429.863 ops/s # JMH version: 1.33 @@ -885,15 +885,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:55 +# Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=837421682802 as seed for Random -38360.550 ops/s -Iteration 1: 68347.640 ops/s +# Warmup Iteration 1: Using SEED=822985776468 as seed for Random +61738.792 ops/s +Iteration 1: 83743.083 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 68347.640 ops/s + 83743.083 ops/s # JMH version: 1.33 @@ -908,15 +908,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:42 +# Run progress: 75.76% complete, ETA 00:01:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=850753640628 as seed for Random -12327.564 ops/s -Iteration 1: 12860.215 ops/s +# Warmup Iteration 1: Using SEED=836029923393 as seed for Random +12583.166 ops/s +Iteration 1: 13323.077 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 12860.215 ops/s + 13323.077 ops/s # JMH version: 1.33 @@ -931,15 +931,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:29 +# Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=864035147290 as seed for Random -75757.377 ops/s -Iteration 1: 116575.042 ops/s +# Warmup Iteration 1: Using SEED=849180538008 as seed for Random +90856.119 ops/s +Iteration 1: 129493.433 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 116575.042 ops/s + 129493.433 ops/s # JMH version: 1.33 @@ -954,15 +954,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:17 +# Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=877319199832 as seed for Random -66066.470 ops/s -Iteration 1: 124739.937 ops/s +# Warmup Iteration 1: Using SEED=862267121025 as seed for Random +78659.559 ops/s +Iteration 1: 151170.028 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 124739.937 ops/s + 151170.028 ops/s # JMH version: 1.33 @@ -977,15 +977,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:04 +# Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=890530217228 as seed for Random -53339.373 ops/s -Iteration 1: 70288.407 ops/s +# Warmup Iteration 1: Using SEED=875360676145 as seed for Random +57899.122 ops/s +Iteration 1: 78417.559 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 70288.407 ops/s + 78417.559 ops/s # JMH version: 1.33 @@ -1000,15 +1000,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:51 +# Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=903905445405 as seed for Random -64301.054 ops/s -Iteration 1: 122757.657 ops/s +# Warmup Iteration 1: Using SEED=888468174019 as seed for Random +89958.118 ops/s +Iteration 1: 139125.249 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 122757.657 ops/s + 139125.249 ops/s # JMH version: 1.33 @@ -1025,13 +1025,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=917105616820 as seed for Random -47851.248 ops/s -Iteration 1: 80420.513 ops/s +# Warmup Iteration 1: Using SEED=901581121531 as seed for Random +61656.059 ops/s +Iteration 1: 88095.089 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 80420.513 ops/s + 88095.089 ops/s # JMH version: 1.33 @@ -1048,13 +1048,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=930375282333 as seed for Random -109715.054 ops/s -Iteration 1: 208052.838 ops/s +# Warmup Iteration 1: Using SEED=914677482204 as seed for Random +187956.835 ops/s +Iteration 1: 250764.025 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 208052.838 ops/s + 250764.025 ops/s # JMH version: 1.33 @@ -1071,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=943639216302 as seed for Random -48652.990 ops/s -Iteration 1: 162940.009 ops/s +# Warmup Iteration 1: Using SEED=927907635713 as seed for Random +164493.545 ops/s +Iteration 1: 230106.471 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 162940.009 ops/s + 230106.471 ops/s -# Run complete. Total time: 00:07:06 +# Run complete. Total time: 00:07:00 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1089,35 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 459163.113 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 244401.207 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 507154.626 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 461716.761 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 153718.263 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 37973.542 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 186668.232 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 187553.344 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 276971.289 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 350567.188 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 346416.837 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 134548.848 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 55740.907 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 416830.302 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 228545.761 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 157757.663 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 168446.039 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 43517.229 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 202143.491 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 157025.789 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 297666.187 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 24045.673 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 63055.564 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 68347.640 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 12860.215 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 116575.042 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 124739.937 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 70288.407 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 122757.657 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 80420.513 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 208052.838 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 162940.009 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 606279.212 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 366324.492 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 590275.874 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 535523.236 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 213666.726 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 13507.810 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 228764.874 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 203811.986 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 372814.370 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 392770.953 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 394580.438 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 155646.827 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 73895.548 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 448379.128 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 188885.650 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 190480.341 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 250993.043 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 55975.623 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 249518.340 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 197696.700 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 362799.112 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 28587.940 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 16429.863 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 83743.083 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 13323.077 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 129493.433 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 151170.028 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 78417.559 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 139125.249 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 88095.089 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 250764.025 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 230106.471 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt index 28a994c..a019c8b 100644 --- a/output/users-deser-1-10.txt +++ b/output/users-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1385678316460 as seed for Random -38298.420 ops/s -Iteration 1: 49129.606 ops/s +# Warmup Iteration 1: Using SEED=1363558543361 as seed for Random +44484.254 ops/s +Iteration 1: 59484.067 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 49129.606 ops/s + 59484.067 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:07 +# Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1398949563071 as seed for Random -23340.098 ops/s -Iteration 1: 37956.861 ops/s +# Warmup Iteration 1: Using SEED=1376694045464 as seed for Random +29772.732 ops/s +Iteration 1: 44226.942 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 37956.861 ops/s + 44226.942 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:53 +# Run progress: 6.06% complete, ETA 00:06:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1412281081151 as seed for Random +# Warmup Iteration 1: Using SEED=1389788595847 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax @@ -99,7 +99,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -117,12 +117,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -148,8 +142,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -315,7 +308,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -333,6 +326,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -353,12 +352,10 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) +java.lang.IllegalStateException: More threads than expected + at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) + at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -387,15 +384,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:38 +# Run progress: 9.09% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1413432306106 as seed for Random -32334.017 ops/s -Iteration 1: 54794.609 ops/s +# Warmup Iteration 1: Using SEED=1390789733776 as seed for Random +52085.905 ops/s +Iteration 1: 71040.290 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 54794.609 ops/s + 71040.290 ops/s # JMH version: 1.33 @@ -410,15 +407,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:58 +# Run progress: 12.12% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1426725845470 as seed for Random -44202.334 ops/s -Iteration 1: 53440.465 ops/s +# Warmup Iteration 1: Using SEED=1403935092047 as seed for Random +44038.403 ops/s +Iteration 1: 55664.659 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 53440.465 ops/s + 55664.659 ops/s # JMH version: 1.33 @@ -433,15 +430,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:04 +# Run progress: 15.15% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1439957639548 as seed for Random -11170.988 ops/s -Iteration 1: 25233.812 ops/s +# Warmup Iteration 1: Using SEED=1416978711417 as seed for Random +23644.752 ops/s +Iteration 1: 35110.610 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 25233.812 ops/s + 35110.610 ops/s # JMH version: 1.33 @@ -456,15 +453,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:04 +# Run progress: 18.18% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1453261610582 as seed for Random -1604.844 ops/s -Iteration 1: 3815.989 ops/s +# Warmup Iteration 1: Using SEED=1430110510281 as seed for Random +1636.774 ops/s +Iteration 1: 4013.089 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 3815.989 ops/s + 4013.089 ops/s # JMH version: 1.33 @@ -479,15 +476,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:00 +# Run progress: 21.21% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1466599604928 as seed for Random -14096.428 ops/s -Iteration 1: 24272.467 ops/s +# Warmup Iteration 1: Using SEED=1443232455287 as seed for Random +22331.941 ops/s +Iteration 1: 27319.588 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 24272.467 ops/s + 27319.588 ops/s # JMH version: 1.33 @@ -502,15 +499,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:54 +# Run progress: 24.24% complete, ETA 00:04:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1479922444985 as seed for Random -14626.531 ops/s -Iteration 1: 23893.705 ops/s +# Warmup Iteration 1: Using SEED=1456348127990 as seed for Random +21292.199 ops/s +Iteration 1: 29934.071 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 23893.705 ops/s + 29934.071 ops/s # JMH version: 1.33 @@ -525,15 +522,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:46 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1493255733012 as seed for Random -15848.135 ops/s -Iteration 1: 35038.644 ops/s +# Warmup Iteration 1: Using SEED=1469468853681 as seed for Random +22118.930 ops/s +Iteration 1: 40589.726 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 35038.644 ops/s + 40589.726 ops/s # JMH version: 1.33 @@ -548,20 +545,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:38 +# Run progress: 30.30% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1506561911198 as seed for Random +# Warmup Iteration 1: Using SEED=1482594260287 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -17880.200 ops/s -Iteration 1: 36175.288 ops/s +33155.090 ops/s +Iteration 1: 47634.903 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 36175.288 ops/s + 47634.903 ops/s # JMH version: 1.33 @@ -576,15 +573,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:28 +# Run progress: 33.33% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1519901552103 as seed for Random -30419.809 ops/s -Iteration 1: 40857.407 ops/s +# Warmup Iteration 1: Using SEED=1495730710627 as seed for Random +22067.275 ops/s +Iteration 1: 44653.353 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 40857.407 ops/s + 44653.353 ops/s # JMH version: 1.33 @@ -599,15 +596,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:18 +# Run progress: 36.36% complete, ETA 00:04:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1533214699331 as seed for Random -7960.747 ops/s -Iteration 1: 14787.970 ops/s +# Warmup Iteration 1: Using SEED=1508815533555 as seed for Random +16635.055 ops/s +Iteration 1: 25566.398 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 14787.970 ops/s + 25566.398 ops/s # JMH version: 1.33 @@ -622,15 +619,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:07 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1546569596995 as seed for Random -4185.870 ops/s -Iteration 1: 7085.765 ops/s +# Warmup Iteration 1: Using SEED=1521902532486 as seed for Random +5585.855 ops/s +Iteration 1: 8989.503 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 7085.765 ops/s + 8989.503 ops/s # JMH version: 1.33 @@ -645,20 +642,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:56 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1559893994620 as seed for Random +# Warmup Iteration 1: Using SEED=1535048602736 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -35490.134 ops/s -Iteration 1: 50803.668 ops/s +32794.723 ops/s +Iteration 1: 63946.492 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 50803.668 ops/s + 63946.492 ops/s # JMH version: 1.33 @@ -673,20 +670,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:45 +# Run progress: 45.45% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1573144881777 as seed for Random +# Warmup Iteration 1: Using SEED=1548108058536 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -24940.581 ops/s -Iteration 1: 30446.189 ops/s +28685.396 ops/s +Iteration 1: 34592.114 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 30446.189 ops/s + 34592.114 ops/s # JMH version: 1.33 @@ -701,15 +698,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:33 +# Run progress: 48.48% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1586454457641 as seed for Random -10186.458 ops/s -Iteration 1: 29501.700 ops/s +# Warmup Iteration 1: Using SEED=1561148659345 as seed for Random +27590.161 ops/s +Iteration 1: 40459.167 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 29501.700 ops/s + 40459.167 ops/s # JMH version: 1.33 @@ -724,15 +721,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:21 +# Run progress: 51.52% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1599741683119 as seed for Random -17645.148 ops/s -Iteration 1: 23834.810 ops/s +# Warmup Iteration 1: Using SEED=1574216875662 as seed for Random +20764.077 ops/s +Iteration 1: 28438.831 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 23834.810 ops/s + 28438.831 ops/s # JMH version: 1.33 @@ -747,15 +744,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:09 +# Run progress: 54.55% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1613024942846 as seed for Random -2300.955 ops/s -Iteration 1: 5027.190 ops/s +# Warmup Iteration 1: Using SEED=1587359476678 as seed for Random +3555.996 ops/s +Iteration 1: 6558.179 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 5027.190 ops/s + 6558.179 ops/s # JMH version: 1.33 @@ -770,15 +767,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:57 +# Run progress: 57.58% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1626350241645 as seed for Random -5362.520 ops/s -Iteration 1: 22723.804 ops/s +# Warmup Iteration 1: Using SEED=1600414123309 as seed for Random +19135.735 ops/s +Iteration 1: 36217.546 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 22723.804 ops/s + 36217.546 ops/s # JMH version: 1.33 @@ -793,15 +790,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:45 +# Run progress: 60.61% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1639712430432 as seed for Random -2475.624 ops/s -Iteration 1: 12654.852 ops/s +# Warmup Iteration 1: Using SEED=1613613179325 as seed for Random +7489.377 ops/s +Iteration 1: 29214.857 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 12654.852 ops/s + 29214.857 ops/s # JMH version: 1.33 @@ -816,15 +813,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:32 +# Run progress: 63.64% complete, ETA 00:02:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1653118529382 as seed for Random -9925.101 ops/s -Iteration 1: 32503.153 ops/s +# Warmup Iteration 1: Using SEED=1626762783054 as seed for Random +25574.000 ops/s +Iteration 1: 43256.098 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 32503.153 ops/s + 43256.098 ops/s # JMH version: 1.33 @@ -839,15 +836,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:20 +# Run progress: 66.67% complete, ETA 00:02:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1666464158712 as seed for Random -3862.049 ops/s -Iteration 1: 5107.464 ops/s +# Warmup Iteration 1: Using SEED=1639917815950 as seed for Random +6293.584 ops/s +Iteration 1: 10864.928 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 5107.464 ops/s + 10864.928 ops/s # JMH version: 1.33 @@ -862,15 +859,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:07 +# Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1679857701622 as seed for Random -4234.184 ops/s -Iteration 1: 8839.429 ops/s +# Warmup Iteration 1: Using SEED=1652999724050 as seed for Random +3262.107 ops/s +Iteration 1: 10686.195 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 8839.429 ops/s + 10686.195 ops/s # JMH version: 1.33 @@ -885,15 +882,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:55 +# Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1693133058128 as seed for Random -5951.399 ops/s -Iteration 1: 10629.730 ops/s +# Warmup Iteration 1: Using SEED=1666084740450 as seed for Random +8520.430 ops/s +Iteration 1: 12471.447 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 10629.730 ops/s + 12471.447 ops/s # JMH version: 1.33 @@ -908,15 +905,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:42 +# Run progress: 75.76% complete, ETA 00:01:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1706435186693 as seed for Random -3013.655 ops/s -Iteration 1: 10863.713 ops/s +# Warmup Iteration 1: Using SEED=1679230811246 as seed for Random +13927.480 ops/s +Iteration 1: 23288.551 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 10863.713 ops/s + 23288.551 ops/s # JMH version: 1.33 @@ -931,15 +928,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:29 +# Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1719807600616 as seed for Random -3718.554 ops/s -Iteration 1: 7875.420 ops/s +# Warmup Iteration 1: Using SEED=1692315633234 as seed for Random +10042.548 ops/s +Iteration 1: 14357.993 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 7875.420 ops/s + 14357.993 ops/s # JMH version: 1.33 @@ -954,15 +951,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:17 +# Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1733127442058 as seed for Random -7036.249 ops/s -Iteration 1: 21129.810 ops/s +# Warmup Iteration 1: Using SEED=1705351069819 as seed for Random +11098.207 ops/s +Iteration 1: 25029.435 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 21129.810 ops/s + 25029.435 ops/s # JMH version: 1.33 @@ -977,15 +974,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:04 +# Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1746436003194 as seed for Random -10591.149 ops/s -Iteration 1: 16815.482 ops/s +# Warmup Iteration 1: Using SEED=1718455340600 as seed for Random +15009.471 ops/s +Iteration 1: 21138.697 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 16815.482 ops/s + 21138.697 ops/s # JMH version: 1.33 @@ -1000,15 +997,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:51 +# Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1759728347618 as seed for Random -4063.477 ops/s -Iteration 1: 10226.939 ops/s +# Warmup Iteration 1: Using SEED=1731480980747 as seed for Random +8710.037 ops/s +Iteration 1: 12054.592 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 10226.939 ops/s + 12054.592 ops/s # JMH version: 1.33 @@ -1025,13 +1022,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1773143741902 as seed for Random -6072.249 ops/s -Iteration 1: 8576.169 ops/s +# Warmup Iteration 1: Using SEED=1744603452102 as seed for Random +5844.677 ops/s +Iteration 1: 7972.378 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 8576.169 ops/s + 7972.378 ops/s # JMH version: 1.33 @@ -1048,13 +1045,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1786397266955 as seed for Random -9130.712 ops/s -Iteration 1: 23700.081 ops/s +# Warmup Iteration 1: Using SEED=1757709876249 as seed for Random +14600.129 ops/s +Iteration 1: 28641.902 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 23700.081 ops/s + 28641.902 ops/s # JMH version: 1.33 @@ -1071,16 +1068,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1799682432921 as seed for Random -5597.913 ops/s -Iteration 1: 17540.165 ops/s +# Warmup Iteration 1: Using SEED=1770877547710 as seed for Random +20054.953 ops/s +Iteration 1: 25180.946 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 17540.165 ops/s + 25180.946 ops/s -# Run complete. Total time: 00:07:07 +# Run complete. Total time: 00:07:00 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1089,35 +1086,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 49129.606 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 37956.861 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 54794.609 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 53440.465 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 25233.812 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 3815.989 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 24272.467 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 23893.705 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 35038.644 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 36175.288 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 40857.407 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 14787.970 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 7085.765 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 50803.668 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 30446.189 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 29501.700 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 23834.810 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 5027.190 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 22723.804 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 12654.852 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 32503.153 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 5107.464 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 8839.429 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 10629.730 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 10863.713 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 7875.420 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 21129.810 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 16815.482 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 10226.939 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 8576.169 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 23700.081 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 17540.165 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 59484.067 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 44226.942 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 71040.290 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 55664.659 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 35110.610 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 4013.089 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 27319.588 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 29934.071 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 40589.726 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 47634.903 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 44653.353 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 25566.398 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 8989.503 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 63946.492 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 34592.114 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 40459.167 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 28438.831 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 6558.179 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 36217.546 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 29214.857 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 43256.098 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 10864.928 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 10686.195 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 12471.447 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 23288.551 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 14357.993 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 25029.435 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 21138.697 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 12054.592 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 7972.378 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 28641.902 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 25180.946 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt index c1a5178..01df790 100644 --- a/output/users-deser-1-100.txt +++ b/output/users-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2243741765813 as seed for Random -2546.262 ops/s -Iteration 1: 4227.780 ops/s +# Warmup Iteration 1: Using SEED=2208299546595 as seed for Random +3752.530 ops/s +Iteration 1: 5224.726 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 4227.780 ops/s + 5224.726 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:08 +# Run progress: 3.03% complete, ETA 00:07:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2257106127549 as seed for Random -2022.101 ops/s -Iteration 1: 3651.445 ops/s +# Warmup Iteration 1: Using SEED=2221567915819 as seed for Random +3261.115 ops/s +Iteration 1: 4605.589 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 3651.445 ops/s + 4605.589 ops/s # JMH version: 1.33 @@ -56,12 +56,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:55 +# Run progress: 6.06% complete, ETA 00:06:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2270422272896 as seed for Random +# Warmup Iteration 1: Using SEED=2234675806474 as seed for Random -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -79,12 +79,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -143,7 +137,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -161,6 +155,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -205,7 +205,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -338,8 +339,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:39 +# Run progress: 9.09% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2271661269856 as seed for Random -4276.275 ops/s -Iteration 1: 6257.768 ops/s +# Warmup Iteration 1: Using SEED=2235752252851 as seed for Random +5845.895 ops/s +Iteration 1: 7250.744 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 6257.768 ops/s + 7250.744 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:59 +# Run progress: 12.12% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2284987118752 as seed for Random -2449.637 ops/s -Iteration 1: 3121.033 ops/s +# Warmup Iteration 1: Using SEED=2248889081320 as seed for Random +3200.245 ops/s +Iteration 1: 3582.073 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 3121.033 ops/s + 3582.073 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:05 +# Run progress: 15.15% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2298300371214 as seed for Random -1270.837 ops/s -Iteration 1: 2466.950 ops/s +# Warmup Iteration 1: Using SEED=2262013435086 as seed for Random +1983.536 ops/s +Iteration 1: 3161.986 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 2466.950 ops/s + 3161.986 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:06 +# Run progress: 18.18% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2311683854207 as seed for Random -134.552 ops/s -Iteration 1: 265.434 ops/s +# Warmup Iteration 1: Using SEED=2275142897258 as seed for Random +273.239 ops/s +Iteration 1: 716.435 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 265.434 ops/s + 716.435 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:02 +# Run progress: 21.21% complete, ETA 00:04:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2325252571270 as seed for Random -1743.538 ops/s -Iteration 1: 2596.791 ops/s +# Warmup Iteration 1: Using SEED=2288292871536 as seed for Random +2168.268 ops/s +Iteration 1: 2929.072 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 2596.791 ops/s + 2929.072 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:56 +# Run progress: 24.24% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2338669491974 as seed for Random -1224.887 ops/s -Iteration 1: 2498.042 ops/s +# Warmup Iteration 1: Using SEED=2301421888696 as seed for Random +2183.729 ops/s +Iteration 1: 2995.957 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 2498.042 ops/s + 2995.957 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:48 +# Run progress: 27.27% complete, ETA 00:04:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2352043975219 as seed for Random -1684.807 ops/s -Iteration 1: 3333.766 ops/s +# Warmup Iteration 1: Using SEED=2314562733776 as seed for Random +3018.259 ops/s +Iteration 1: 4685.656 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 3333.766 ops/s + 4685.656 ops/s # JMH version: 1.33 @@ -548,20 +548,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:40 +# Run progress: 30.30% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2365434829481 as seed for Random +# Warmup Iteration 1: Using SEED=2327699346517 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -2907.289 ops/s -Iteration 1: 4218.789 ops/s +3417.910 ops/s +Iteration 1: 4952.044 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 4218.789 ops/s + 4952.044 ops/s # JMH version: 1.33 @@ -576,15 +576,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:30 +# Run progress: 33.33% complete, ETA 00:04:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2378805243413 as seed for Random -2192.620 ops/s -Iteration 1: 3906.927 ops/s +# Warmup Iteration 1: Using SEED=2340824568285 as seed for Random +2698.333 ops/s +Iteration 1: 4656.765 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 3906.927 ops/s + 4656.765 ops/s # JMH version: 1.33 @@ -599,15 +599,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:19 +# Run progress: 36.36% complete, ETA 00:04:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2392065709059 as seed for Random -1078.077 ops/s -Iteration 1: 1621.800 ops/s +# Warmup Iteration 1: Using SEED=2353999300515 as seed for Random +1372.673 ops/s +Iteration 1: 1733.212 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 1621.800 ops/s + 1733.212 ops/s # JMH version: 1.33 @@ -622,15 +622,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:08 +# Run progress: 39.39% complete, ETA 00:04:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2405369890489 as seed for Random -355.496 ops/s -Iteration 1: 684.862 ops/s +# Warmup Iteration 1: Using SEED=2367180866071 as seed for Random +579.584 ops/s +Iteration 1: 873.761 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 684.862 ops/s + 873.761 ops/s # JMH version: 1.33 @@ -645,20 +645,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:57 +# Run progress: 42.42% complete, ETA 00:03:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2418817227448 as seed for Random +# Warmup Iteration 1: Using SEED=2380354160085 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -2068.928 ops/s -Iteration 1: 5044.155 ops/s +6306.701 ops/s +Iteration 1: 6766.257 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 5044.155 ops/s + 6766.257 ops/s # JMH version: 1.33 @@ -673,20 +673,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:46 +# Run progress: 45.45% complete, ETA 00:03:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2432161341833 as seed for Random +# Warmup Iteration 1: Using SEED=2393494312252 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -2183.431 ops/s -Iteration 1: 3046.290 ops/s +3205.939 ops/s +Iteration 1: 3710.031 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 3046.290 ops/s + 3710.031 ops/s # JMH version: 1.33 @@ -701,15 +701,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:34 +# Run progress: 48.48% complete, ETA 00:03:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2445460977731 as seed for Random -2725.261 ops/s -Iteration 1: 3837.438 ops/s +# Warmup Iteration 1: Using SEED=2406704426897 as seed for Random +3611.209 ops/s +Iteration 1: 4760.043 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 3837.438 ops/s + 4760.043 ops/s # JMH version: 1.33 @@ -724,15 +724,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:22 +# Run progress: 51.52% complete, ETA 00:03:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2458884352890 as seed for Random -1152.910 ops/s -Iteration 1: 918.776 ops/s +# Warmup Iteration 1: Using SEED=2419914911341 as seed for Random +1061.926 ops/s +Iteration 1: 1727.910 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 918.776 ops/s + 1727.910 ops/s # JMH version: 1.33 @@ -747,15 +747,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:10 +# Run progress: 54.55% complete, ETA 00:03:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2472290169416 as seed for Random -223.038 ops/s -Iteration 1: 502.722 ops/s +# Warmup Iteration 1: Using SEED=2433050483532 as seed for Random +278.361 ops/s +Iteration 1: 631.657 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 502.722 ops/s + 631.657 ops/s # JMH version: 1.33 @@ -770,15 +770,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:58 +# Run progress: 57.58% complete, ETA 00:02:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2485719919517 as seed for Random -754.768 ops/s -Iteration 1: 2922.800 ops/s +# Warmup Iteration 1: Using SEED=2446233359903 as seed for Random +1745.254 ops/s +Iteration 1: 3565.391 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 2922.800 ops/s + 3565.391 ops/s # JMH version: 1.33 @@ -793,15 +793,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:46 +# Run progress: 60.61% complete, ETA 00:02:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2499096620885 as seed for Random -451.948 ops/s -Iteration 1: 535.669 ops/s +# Warmup Iteration 1: Using SEED=2459385176538 as seed for Random +919.807 ops/s +Iteration 1: 2355.455 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 535.669 ops/s + 2355.455 ops/s # JMH version: 1.33 @@ -816,15 +816,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:33 +# Run progress: 63.64% complete, ETA 00:02:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2512607185280 as seed for Random -1655.845 ops/s -Iteration 1: 3847.397 ops/s +# Warmup Iteration 1: Using SEED=2472647494731 as seed for Random +1951.368 ops/s +Iteration 1: 4744.820 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 3847.397 ops/s + 4744.820 ops/s # JMH version: 1.33 @@ -839,15 +839,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:21 +# Run progress: 66.67% complete, ETA 00:02:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2525943639138 as seed for Random -892.869 ops/s -Iteration 1: 1708.973 ops/s +# Warmup Iteration 1: Using SEED=2485788803403 as seed for Random +1064.794 ops/s +Iteration 1: 2114.930 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 1708.973 ops/s + 2114.930 ops/s # JMH version: 1.33 @@ -862,15 +862,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:08 +# Run progress: 69.70% complete, ETA 00:02:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2539268466010 as seed for Random -405.600 ops/s -Iteration 1: 980.869 ops/s +# Warmup Iteration 1: Using SEED=2498878958404 as seed for Random +411.465 ops/s +Iteration 1: 1073.007 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 980.869 ops/s + 1073.007 ops/s # JMH version: 1.33 @@ -885,15 +885,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:55 +# Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2552713007487 as seed for Random -387.459 ops/s -Iteration 1: 1059.426 ops/s +# Warmup Iteration 1: Using SEED=2512030177382 as seed for Random +747.507 ops/s +Iteration 1: 1253.318 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 1059.426 ops/s + 1253.318 ops/s # JMH version: 1.33 @@ -908,15 +908,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:43 +# Run progress: 75.76% complete, ETA 00:01:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2566094152315 as seed for Random -314.480 ops/s -Iteration 1: 608.300 ops/s +# Warmup Iteration 1: Using SEED=2525234573495 as seed for Random +930.789 ops/s +Iteration 1: 2365.907 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 608.300 ops/s + 2365.907 ops/s # JMH version: 1.33 @@ -931,15 +931,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:30 +# Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2579464254354 as seed for Random -926.908 ops/s -Iteration 1: 1218.373 ops/s +# Warmup Iteration 1: Using SEED=2538316585497 as seed for Random +1042.900 ops/s +Iteration 1: 1481.014 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 1218.373 ops/s + 1481.014 ops/s # JMH version: 1.33 @@ -954,15 +954,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:17 +# Run progress: 81.82% complete, ETA 00:01:16 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2592784605829 as seed for Random -1121.109 ops/s -Iteration 1: 2150.317 ops/s +# Warmup Iteration 1: Using SEED=2551418115203 as seed for Random +1274.987 ops/s +Iteration 1: 2221.414 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 2150.317 ops/s + 2221.414 ops/s # JMH version: 1.33 @@ -977,15 +977,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:04 +# Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2606130786612 as seed for Random -1355.640 ops/s -Iteration 1: 2030.586 ops/s +# Warmup Iteration 1: Using SEED=2564549558698 as seed for Random +1902.654 ops/s +Iteration 1: 2599.582 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 2030.586 ops/s + 2599.582 ops/s # JMH version: 1.33 @@ -1000,15 +1000,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:51 +# Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2619495604458 as seed for Random -501.643 ops/s -Iteration 1: 990.990 ops/s +# Warmup Iteration 1: Using SEED=2577778222245 as seed for Random +872.809 ops/s +Iteration 1: 1240.572 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 990.990 ops/s + 1240.572 ops/s # JMH version: 1.33 @@ -1025,13 +1025,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2632834828868 as seed for Random -370.513 ops/s -Iteration 1: 771.372 ops/s +# Warmup Iteration 1: Using SEED=2590915013417 as seed for Random +484.785 ops/s +Iteration 1: 902.629 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 771.372 ops/s + 902.629 ops/s # JMH version: 1.33 @@ -1048,13 +1048,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2646162786187 as seed for Random -1039.286 ops/s -Iteration 1: 2343.627 ops/s +# Warmup Iteration 1: Using SEED=2604017919619 as seed for Random +2411.072 ops/s +Iteration 1: 3061.613 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 2343.627 ops/s + 3061.613 ops/s # JMH version: 1.33 @@ -1071,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2659490874304 as seed for Random -1355.331 ops/s -Iteration 1: 2113.920 ops/s +# Warmup Iteration 1: Using SEED=2617099316417 as seed for Random +1796.824 ops/s +Iteration 1: 2398.676 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 2113.920 ops/s + 2398.676 ops/s -# Run complete. Total time: 00:07:09 +# Run complete. Total time: 00:07:01 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1089,35 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 4227.780 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 3651.445 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 6257.768 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 3121.033 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 2466.950 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 265.434 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 2596.791 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 2498.042 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 3333.766 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 4218.789 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 3906.927 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 1621.800 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 684.862 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 5044.155 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 3046.290 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 3837.438 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 918.776 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 502.722 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 2922.800 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 535.669 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 3847.397 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 1708.973 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 980.869 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 1059.426 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 608.300 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 1218.373 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 2150.317 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 2030.586 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 990.990 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 771.372 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 2343.627 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 2113.920 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 5224.726 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4605.589 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 7250.744 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 3582.073 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 3161.986 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 716.435 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 2929.072 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 2995.957 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 4685.656 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 4952.044 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 4656.765 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 1733.212 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 873.761 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 6766.257 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 3710.031 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 4760.043 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 1727.910 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 631.657 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 3565.391 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 2355.455 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 4744.820 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2114.930 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 1073.007 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 1253.318 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2365.907 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 1481.014 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 2221.414 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 2599.582 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 1240.572 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 902.629 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 3061.613 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 2398.676 ops/s diff --git a/output/users-deser-1-1000.txt b/output/users-deser-1-1000.txt index 88a60e2..8265d66 100644 --- a/output/users-deser-1-1000.txt +++ b/output/users-deser-1-1000.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3124116666666 as seed for Random -394.781 ops/s -Iteration 1: 481.523 ops/s +# Warmup Iteration 1: Using SEED=3071334904606 as seed for Random +422.591 ops/s +Iteration 1: 491.747 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 481.523 ops/s + 491.747 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:13 +# Run progress: 3.03% complete, ETA 00:07:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3137591258564 as seed for Random -230.890 ops/s -Iteration 1: 356.469 ops/s +# Warmup Iteration 1: Using SEED=3084686934503 as seed for Random +321.586 ops/s +Iteration 1: 439.439 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 356.469 ops/s + 439.439 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:07:00 +# Run progress: 6.06% complete, ETA 00:06:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3151138338452 as seed for Random +# Warmup Iteration 1: Using SEED=3098119959055 as seed for Random java.lang.ExceptionInInitializerError @@ -66,7 +66,8 @@ java.lang.ExceptionInInitializerError at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -84,7 +85,7 @@ Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) at org.boon.primitive.Chr.chars(Chr.java:70) at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more + ... 18 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -262,8 +263,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:45 +# Run progress: 9.09% complete, ETA 00:04:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3152561838719 as seed for Random -413.877 ops/s -Iteration 1: 579.373 ops/s +# Warmup Iteration 1: Using SEED=3099218919951 as seed for Random +541.845 ops/s +Iteration 1: 703.844 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 579.373 ops/s + 703.844 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:05:05 +# Run progress: 12.12% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3166146011252 as seed for Random -363.219 ops/s -Iteration 1: 487.919 ops/s +# Warmup Iteration 1: Using SEED=3112495714900 as seed for Random +134.995 ops/s +Iteration 1: 542.924 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 487.919 ops/s + 542.924 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:11 +# Run progress: 15.15% complete, ETA 00:05:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3179702760848 as seed for Random -124.396 ops/s -Iteration 1: 157.414 ops/s +# Warmup Iteration 1: Using SEED=3125788446799 as seed for Random +146.389 ops/s +Iteration 1: 192.047 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 157.414 ops/s + 192.047 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:12 +# Run progress: 18.18% complete, ETA 00:05:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3193563149792 as seed for Random -12.427 ops/s -Iteration 1: 30.370 ops/s +# Warmup Iteration 1: Using SEED=3139337431787 as seed for Random +19.102 ops/s +Iteration 1: 57.230 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 30.370 ops/s + 57.230 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:15 +# Run progress: 21.21% complete, ETA 00:05:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3208873309414 as seed for Random -199.798 ops/s -Iteration 1: 260.301 ops/s +# Warmup Iteration 1: Using SEED=3153528151658 as seed for Random +253.824 ops/s +Iteration 1: 293.342 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 260.301 ops/s + 293.342 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:05:07 +# Run progress: 24.24% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3222451783120 as seed for Random -188.289 ops/s -Iteration 1: 245.689 ops/s +# Warmup Iteration 1: Using SEED=3166833202617 as seed for Random +211.709 ops/s +Iteration 1: 294.832 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 245.689 ops/s + 294.832 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:58 +# Run progress: 27.27% complete, ETA 00:04:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3236065271055 as seed for Random -218.466 ops/s -Iteration 1: 330.229 ops/s +# Warmup Iteration 1: Using SEED=3180194688483 as seed for Random +267.540 ops/s +Iteration 1: 405.550 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 330.229 ops/s + 405.550 ops/s # JMH version: 1.33 @@ -548,20 +548,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:48 +# Run progress: 30.30% complete, ETA 00:04:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3249633726159 as seed for Random +# Warmup Iteration 1: Using SEED=3193489944457 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -277.082 ops/s -Iteration 1: 406.512 ops/s +374.985 ops/s +Iteration 1: 491.518 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 406.512 ops/s + 491.518 ops/s # JMH version: 1.33 @@ -576,15 +576,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:38 +# Run progress: 33.33% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3263188654753 as seed for Random -255.330 ops/s -Iteration 1: 375.358 ops/s +# Warmup Iteration 1: Using SEED=3206791265233 as seed for Random +371.232 ops/s +Iteration 1: 484.198 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 375.358 ops/s + 484.198 ops/s # JMH version: 1.33 @@ -599,15 +599,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:27 +# Run progress: 36.36% complete, ETA 00:04:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3276635192728 as seed for Random -136.681 ops/s -Iteration 1: 178.705 ops/s +# Warmup Iteration 1: Using SEED=3220043142604 as seed for Random +140.117 ops/s +Iteration 1: 216.117 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 178.705 ops/s + 216.117 ops/s # JMH version: 1.33 @@ -622,15 +622,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:15 +# Run progress: 39.39% complete, ETA 00:04:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3290313340685 as seed for Random -17.597 ops/s -Iteration 1: 30.195 ops/s +# Warmup Iteration 1: Using SEED=3233378959781 as seed for Random +21.572 ops/s +Iteration 1: 39.215 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 30.195 ops/s + 39.215 ops/s # JMH version: 1.33 @@ -645,20 +645,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:09 +# Run progress: 42.42% complete, ETA 00:04:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3307591810540 as seed for Random +# Warmup Iteration 1: Using SEED=3248732159840 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -220.673 ops/s -Iteration 1: 396.739 ops/s +530.402 ops/s +Iteration 1: 626.597 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 396.739 ops/s + 626.597 ops/s # JMH version: 1.33 @@ -673,20 +673,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:56 +# Run progress: 45.45% complete, ETA 00:03:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3321133526306 as seed for Random +# Warmup Iteration 1: Using SEED=3262014433809 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -202.854 ops/s -Iteration 1: 282.742 ops/s +283.189 ops/s +Iteration 1: 354.272 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 282.742 ops/s + 354.272 ops/s # JMH version: 1.33 @@ -701,15 +701,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:43 +# Run progress: 48.48% complete, ETA 00:03:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3334654286979 as seed for Random -190.725 ops/s -Iteration 1: 346.926 ops/s +# Warmup Iteration 1: Using SEED=3275397934891 as seed for Random +266.243 ops/s +Iteration 1: 419.203 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 346.926 ops/s + 419.203 ops/s # JMH version: 1.33 @@ -724,15 +724,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:31 +# Run progress: 51.52% complete, ETA 00:03:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3348279332732 as seed for Random -165.111 ops/s -Iteration 1: 247.896 ops/s +# Warmup Iteration 1: Using SEED=3288759777946 as seed for Random +169.474 ops/s +Iteration 1: 228.795 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 247.896 ops/s + 228.795 ops/s # JMH version: 1.33 @@ -747,15 +747,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:18 +# Run progress: 54.55% complete, ETA 00:03:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3361834435398 as seed for Random -32.033 ops/s -Iteration 1: 50.107 ops/s +# Warmup Iteration 1: Using SEED=3302207674429 as seed for Random +9.300 ops/s +Iteration 1: 33.932 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 50.107 ops/s + 33.932 ops/s # JMH version: 1.33 @@ -770,15 +770,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:05 +# Run progress: 57.58% complete, ETA 00:03:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3376167496102 as seed for Random -68.546 ops/s -Iteration 1: 285.170 ops/s +# Warmup Iteration 1: Using SEED=3317990860111 as seed for Random +178.415 ops/s +Iteration 1: 295.132 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 285.170 ops/s + 295.132 ops/s # JMH version: 1.33 @@ -793,15 +793,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:52 +# Run progress: 60.61% complete, ETA 00:02:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3389727094988 as seed for Random -61.070 ops/s -Iteration 1: 226.282 ops/s +# Warmup Iteration 1: Using SEED=3331317330158 as seed for Random +210.807 ops/s +Iteration 1: 301.015 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 226.282 ops/s + 301.015 ops/s # JMH version: 1.33 @@ -816,15 +816,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:39 +# Run progress: 63.64% complete, ETA 00:02:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3403643498917 as seed for Random -98.937 ops/s -Iteration 1: 389.676 ops/s +# Warmup Iteration 1: Using SEED=3344709536312 as seed for Random +178.951 ops/s +Iteration 1: 455.520 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 389.676 ops/s + 455.520 ops/s # JMH version: 1.33 @@ -839,15 +839,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:26 +# Run progress: 66.67% complete, ETA 00:02:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3417208615674 as seed for Random -48.738 ops/s -Iteration 1: 61.783 ops/s +# Warmup Iteration 1: Using SEED=3358069650563 as seed for Random +70.763 ops/s +Iteration 1: 115.950 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 61.783 ops/s + 115.950 ops/s # JMH version: 1.33 @@ -862,15 +862,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:13 +# Run progress: 69.70% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3431216347269 as seed for Random -35.121 ops/s -Iteration 1: 54.706 ops/s +# Warmup Iteration 1: Using SEED=3371939868317 as seed for Random +29.788 ops/s +Iteration 1: 74.860 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 54.706 ops/s + 74.860 ops/s # JMH version: 1.33 @@ -885,15 +885,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:02:00 +# Run progress: 72.73% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3445261063117 as seed for Random -30.139 ops/s -Iteration 1: 80.519 ops/s +# Warmup Iteration 1: Using SEED=3385945672584 as seed for Random +65.247 ops/s +Iteration 1: 120.525 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 80.519 ops/s + 120.525 ops/s # JMH version: 1.33 @@ -908,15 +908,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:47 +# Run progress: 75.76% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3459244757894 as seed for Random -29.540 ops/s -Iteration 1: 75.953 ops/s +# Warmup Iteration 1: Using SEED=3399523190025 as seed for Random +35.513 ops/s +Iteration 1: 140.526 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 75.953 ops/s + 140.526 ops/s # JMH version: 1.33 @@ -931,15 +931,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:34 +# Run progress: 78.79% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3473368037776 as seed for Random -32.785 ops/s -Iteration 1: 48.549 ops/s +# Warmup Iteration 1: Using SEED=3413417415155 as seed for Random +43.398 ops/s +Iteration 1: 45.052 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 48.549 ops/s + 45.052 ops/s # JMH version: 1.33 @@ -954,15 +954,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:20 +# Run progress: 81.82% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3488213199500 as seed for Random -113.946 ops/s -Iteration 1: 214.414 ops/s +# Warmup Iteration 1: Using SEED=3427626223202 as seed for Random +133.433 ops/s +Iteration 1: 238.749 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 214.414 ops/s + 238.749 ops/s # JMH version: 1.33 @@ -977,15 +977,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:07 +# Run progress: 84.85% complete, ETA 00:01:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3501814844935 as seed for Random -122.677 ops/s -Iteration 1: 191.835 ops/s +# Warmup Iteration 1: Using SEED=3440992521738 as seed for Random +156.544 ops/s +Iteration 1: 239.843 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 191.835 ops/s + 239.843 ops/s # JMH version: 1.33 @@ -1000,15 +1000,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:53 +# Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3515417930694 as seed for Random -42.311 ops/s -Iteration 1: 60.641 ops/s +# Warmup Iteration 1: Using SEED=3454347990813 as seed for Random +46.180 ops/s +Iteration 1: 100.378 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 60.641 ops/s + 100.378 ops/s # JMH version: 1.33 @@ -1023,15 +1023,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:40 +# Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3529561038121 as seed for Random -10.457 ops/s -Iteration 1: 18.016 ops/s +# Warmup Iteration 1: Using SEED=3468235942895 as seed for Random +13.241 ops/s +Iteration 1: 19.816 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 18.016 ops/s + 19.816 ops/s # JMH version: 1.33 @@ -1046,15 +1046,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:27 +# Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3549439701922 as seed for Random -57.494 ops/s -Iteration 1: 123.683 ops/s +# Warmup Iteration 1: Using SEED=3486248287234 as seed for Random +144.619 ops/s +Iteration 1: 247.038 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 123.683 ops/s + 247.038 ops/s # JMH version: 1.33 @@ -1071,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3563708477693 as seed for Random -58.859 ops/s -Iteration 1: 148.257 ops/s +# Warmup Iteration 1: Using SEED=3499690236934 as seed for Random +105.796 ops/s +Iteration 1: 199.005 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 148.257 ops/s + 199.005 ops/s -# Run complete. Total time: 00:07:33 +# Run complete. Total time: 00:07:21 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1089,35 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 481.523 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 356.469 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 579.373 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 487.919 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 157.414 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 30.370 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 260.301 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 245.689 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 330.229 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 406.512 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 375.358 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 178.705 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 30.195 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 396.739 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 282.742 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 346.926 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 247.896 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 50.107 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 285.170 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 226.282 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 389.676 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 61.783 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 54.706 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 80.519 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 75.953 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 48.549 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 214.414 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 191.835 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 60.641 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 18.016 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 123.683 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 148.257 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 491.747 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 439.439 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 703.844 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 542.924 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 192.047 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 57.230 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 293.342 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 294.832 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 405.550 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 491.518 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 484.198 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 216.117 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 39.215 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 626.597 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 354.272 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 419.203 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 228.795 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 33.932 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 295.132 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 301.015 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 455.520 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 115.950 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 74.860 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 120.525 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 140.526 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 45.052 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 238.749 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 239.843 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 100.378 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 19.816 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 247.038 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 199.005 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt index c2cc9bc..d8f6250 100644 --- a/output/users-ser-1-1.txt +++ b/output/users-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=102733812949 as seed for Random -361385.021 ops/s -Iteration 1: 435180.713 ops/s +# Warmup Iteration 1: Using SEED=99224432001 as seed for Random +445058.326 ops/s +Iteration 1: 526416.642 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 435180.713 ops/s + 526416.642 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:04 +# Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=115991103995 as seed for Random -250325.721 ops/s -Iteration 1: 349409.548 ops/s +# Warmup Iteration 1: Using SEED=112330364120 as seed for Random +410389.346 ops/s +Iteration 1: 481292.587 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 349409.548 ops/s + 481292.587 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:52 +# Run progress: 6.06% complete, ETA 00:06:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=129254237511 as seed for Random +# Warmup Iteration 1: Using SEED=125367689901 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -67,8 +67,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -322,7 +321,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -341,6 +341,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -362,14 +370,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -382,14 +390,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more @@ -406,15 +406,15 @@ Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:36 +# Run progress: 9.09% complete, ETA 00:04:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=130397093516 as seed for Random -405643.821 ops/s -Iteration 1: 537078.492 ops/s +# Warmup Iteration 1: Using SEED=126316591467 as seed for Random +593900.007 ops/s +Iteration 1: 651652.286 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 537078.492 ops/s + 651652.286 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:56 +# Run progress: 12.12% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=143697446401 as seed for Random -433839.888 ops/s -Iteration 1: 467418.198 ops/s +# Warmup Iteration 1: Using SEED=139385346149 as seed for Random +544445.613 ops/s +Iteration 1: 579916.353 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 467418.198 ops/s + 579916.353 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:03 +# Run progress: 15.15% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=156963586616 as seed for Random -273646.965 ops/s -Iteration 1: 456203.471 ops/s +# Warmup Iteration 1: Using SEED=152487032043 as seed for Random +255018.194 ops/s +Iteration 1: 429021.492 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 456203.471 ops/s + 429021.492 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:03 +# Run progress: 18.18% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=170213068166 as seed for Random -2060.726 ops/s -Iteration 1: 1225.189 ops/s +# Warmup Iteration 1: Using SEED=165559319866 as seed for Random +2182.294 ops/s +Iteration 1: 1247.781 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1225.189 ops/s + 1247.781 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:00 +# Run progress: 21.21% complete, ETA 00:04:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=183531693311 as seed for Random -109965.205 ops/s -Iteration 1: 234767.030 ops/s +# Warmup Iteration 1: Using SEED=178662734859 as seed for Random +243807.719 ops/s +Iteration 1: 278671.706 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 234767.030 ops/s + 278671.706 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:54 +# Run progress: 24.24% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=196871337436 as seed for Random -88328.048 ops/s -Iteration 1: 131126.432 ops/s +# Warmup Iteration 1: Using SEED=191830778800 as seed for Random +146228.711 ops/s +Iteration 1: 193598.728 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 131126.432 ops/s + 193598.728 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:46 +# Run progress: 27.27% complete, ETA 00:04:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=210190077356 as seed for Random -249158.087 ops/s -Iteration 1: 369067.063 ops/s +# Warmup Iteration 1: Using SEED=204919948770 as seed for Random +386172.563 ops/s +Iteration 1: 456317.627 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 369067.063 ops/s + 456317.627 ops/s # JMH version: 1.33 @@ -567,20 +567,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:37 +# Run progress: 30.30% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=223487432950 as seed for Random +# Warmup Iteration 1: Using SEED=218053794322 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -298784.439 ops/s -Iteration 1: 360774.571 ops/s +390093.111 ops/s +Iteration 1: 502856.129 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 360774.571 ops/s + 502856.129 ops/s # JMH version: 1.33 @@ -595,15 +595,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:28 +# Run progress: 33.33% complete, ETA 00:04:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=236780797599 as seed for Random -286574.245 ops/s -Iteration 1: 366347.529 ops/s +# Warmup Iteration 1: Using SEED=231173054060 as seed for Random +396281.869 ops/s +Iteration 1: 436804.729 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 366347.529 ops/s + 436804.729 ops/s # JMH version: 1.33 @@ -618,15 +618,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:17 +# Run progress: 36.36% complete, ETA 00:04:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=250082300605 as seed for Random -80803.383 ops/s -Iteration 1: 114570.908 ops/s +# Warmup Iteration 1: Using SEED=244227755271 as seed for Random +102538.983 ops/s +Iteration 1: 137345.853 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 114570.908 ops/s + 137345.853 ops/s # JMH version: 1.33 @@ -641,15 +641,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:07 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=263328442212 as seed for Random -107145.709 ops/s -Iteration 1: 156401.137 ops/s +# Warmup Iteration 1: Using SEED=257328858126 as seed for Random +151605.611 ops/s +Iteration 1: 192856.804 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 156401.137 ops/s + 192856.804 ops/s # JMH version: 1.33 @@ -664,20 +664,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:55 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=276636897895 as seed for Random +# Warmup Iteration 1: Using SEED=270404379978 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -485140.234 ops/s -Iteration 1: 480715.333 ops/s +605484.025 ops/s +Iteration 1: 591523.144 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 480715.333 ops/s + 591523.144 ops/s # JMH version: 1.33 @@ -692,20 +692,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:44 +# Run progress: 45.45% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=289934236928 as seed for Random +# Warmup Iteration 1: Using SEED=283501705569 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -152552.479 ops/s -Iteration 1: 209808.131 ops/s +241514.591 ops/s +Iteration 1: 275840.906 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 209808.131 ops/s + 275840.906 ops/s # JMH version: 1.33 @@ -720,15 +720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:32 +# Run progress: 48.48% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=303136038192 as seed for Random -269421.879 ops/s -Iteration 1: 307698.343 ops/s +# Warmup Iteration 1: Using SEED=296585452430 as seed for Random +360468.101 ops/s +Iteration 1: 448960.609 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 307698.343 ops/s + 448960.609 ops/s # JMH version: 1.33 @@ -743,15 +743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:21 +# Run progress: 51.52% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=316501226675 as seed for Random -154593.553 ops/s -Iteration 1: 214868.313 ops/s +# Warmup Iteration 1: Using SEED=309676811777 as seed for Random +215413.563 ops/s +Iteration 1: 237362.671 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 214868.313 ops/s + 237362.671 ops/s # JMH version: 1.33 @@ -766,15 +766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:09 +# Run progress: 54.55% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=329748975113 as seed for Random -38961.081 ops/s -Iteration 1: 98434.512 ops/s +# Warmup Iteration 1: Using SEED=322808137093 as seed for Random +92514.355 ops/s +Iteration 1: 164995.781 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 98434.512 ops/s + 164995.781 ops/s # JMH version: 1.33 @@ -789,15 +789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:57 +# Run progress: 57.58% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=343006188277 as seed for Random -162854.711 ops/s -Iteration 1: 220271.183 ops/s +# Warmup Iteration 1: Using SEED=335863213546 as seed for Random +207704.794 ops/s +Iteration 1: 254872.980 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 220271.183 ops/s + 254872.980 ops/s # JMH version: 1.33 @@ -812,15 +812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:44 +# Run progress: 60.61% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=356231701188 as seed for Random -92315.201 ops/s -Iteration 1: 104945.297 ops/s +# Warmup Iteration 1: Using SEED=349038063383 as seed for Random +82283.841 ops/s +Iteration 1: 97303.282 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 104945.297 ops/s + 97303.282 ops/s # JMH version: 1.33 @@ -835,15 +835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:32 +# Run progress: 63.64% complete, ETA 00:02:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=369561894115 as seed for Random -309487.800 ops/s -Iteration 1: 375467.865 ops/s +# Warmup Iteration 1: Using SEED=362290013664 as seed for Random +319843.680 ops/s +Iteration 1: 454046.530 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 375467.865 ops/s + 454046.530 ops/s # JMH version: 1.33 @@ -858,15 +858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:20 +# Run progress: 66.67% complete, ETA 00:02:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=382839575334 as seed for Random -114961.350 ops/s -Iteration 1: 246944.838 ops/s +# Warmup Iteration 1: Using SEED=375423480516 as seed for Random +202385.028 ops/s +Iteration 1: 290249.194 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 246944.838 ops/s + 290249.194 ops/s # JMH version: 1.33 @@ -881,15 +881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:07 +# Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=396042489339 as seed for Random -29093.865 ops/s -Iteration 1: 76165.582 ops/s +# Warmup Iteration 1: Using SEED=388583707444 as seed for Random +46676.791 ops/s +Iteration 1: 96411.871 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 76165.582 ops/s + 96411.871 ops/s # JMH version: 1.33 @@ -904,15 +904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:54 +# Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=409325757150 as seed for Random -29904.996 ops/s -Iteration 1: 70394.123 ops/s +# Warmup Iteration 1: Using SEED=401669903401 as seed for Random +69189.453 ops/s +Iteration 1: 82319.371 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 70394.123 ops/s + 82319.371 ops/s # JMH version: 1.33 @@ -927,15 +927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:42 +# Run progress: 75.76% complete, ETA 00:01:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=422604808673 as seed for Random -103800.257 ops/s -Iteration 1: 203000.031 ops/s +# Warmup Iteration 1: Using SEED=414702389997 as seed for Random +113604.980 ops/s +Iteration 1: 246560.093 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 203000.031 ops/s + 246560.093 ops/s # JMH version: 1.33 @@ -950,15 +950,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:29 +# Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=435883121451 as seed for Random -27976.543 ops/s -Iteration 1: 79370.677 ops/s +# Warmup Iteration 1: Using SEED=427806179413 as seed for Random +29194.198 ops/s +Iteration 1: 91875.463 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 79370.677 ops/s + 91875.463 ops/s # JMH version: 1.33 @@ -973,15 +973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:16 +# Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=449195625381 as seed for Random -129864.610 ops/s -Iteration 1: 211125.065 ops/s +# Warmup Iteration 1: Using SEED=440938712202 as seed for Random +196239.834 ops/s +Iteration 1: 222870.307 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 211125.065 ops/s + 222870.307 ops/s # JMH version: 1.33 @@ -996,15 +996,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:04 +# Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=462404809361 as seed for Random -186802.843 ops/s -Iteration 1: 202989.265 ops/s +# Warmup Iteration 1: Using SEED=454131693786 as seed for Random +142997.601 ops/s +Iteration 1: 251734.825 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 202989.265 ops/s + 251734.825 ops/s # JMH version: 1.33 @@ -1019,15 +1019,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:51 +# Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=475755842866 as seed for Random -36946.076 ops/s -Iteration 1: 91488.819 ops/s +# Warmup Iteration 1: Using SEED=467239759742 as seed for Random +64385.626 ops/s +Iteration 1: 117680.708 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 91488.819 ops/s + 117680.708 ops/s # JMH version: 1.33 @@ -1044,13 +1044,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=489152591335 as seed for Random -23360.062 ops/s -Iteration 1: 26114.151 ops/s +# Warmup Iteration 1: Using SEED=480403387066 as seed for Random +66245.578 ops/s +Iteration 1: 90376.284 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 26114.151 ops/s + 90376.284 ops/s # JMH version: 1.33 @@ -1067,13 +1067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=502477420238 as seed for Random -10612.358 ops/s -Iteration 1: 51210.622 ops/s +# Warmup Iteration 1: Using SEED=493547589487 as seed for Random +35480.819 ops/s +Iteration 1: 77917.828 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 51210.622 ops/s + 77917.828 ops/s # JMH version: 1.33 @@ -1090,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=515843267831 as seed for Random -65840.120 ops/s -Iteration 1: 91677.332 ops/s +# Warmup Iteration 1: Using SEED=506593659596 as seed for Random +76039.701 ops/s +Iteration 1: 113015.953 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 91677.332 ops/s + 113015.953 ops/s -# Run complete. Total time: 00:07:06 +# Run complete. Total time: 00:07:00 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1108,35 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 435180.713 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 349409.548 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 537078.492 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 467418.198 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 456203.471 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 1225.189 ops/s -c.g.f.j.databind.Serialization.genson thrpt 234767.030 ops/s -c.g.f.j.databind.Serialization.gson thrpt 131126.432 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 369067.063 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 360774.571 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 366347.529 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 114570.908 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 156401.137 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 480715.333 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 209808.131 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 307698.343 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 214868.313 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 98434.512 ops/s -c.g.f.j.stream.Serialization.genson thrpt 220271.183 ops/s -c.g.f.j.stream.Serialization.gson thrpt 104945.297 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 375467.865 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 246944.838 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 76165.582 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 70394.123 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 203000.031 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 79370.677 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 211125.065 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 202989.265 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 91488.819 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 26114.151 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 51210.622 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 91677.332 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 526416.642 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 481292.587 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 651652.286 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 579916.353 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 429021.492 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 1247.781 ops/s +c.g.f.j.databind.Serialization.genson thrpt 278671.706 ops/s +c.g.f.j.databind.Serialization.gson thrpt 193598.728 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 456317.627 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 502856.129 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 436804.729 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 137345.853 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 192856.804 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 591523.144 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 275840.906 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 448960.609 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 237362.671 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 164995.781 ops/s +c.g.f.j.stream.Serialization.genson thrpt 254872.980 ops/s +c.g.f.j.stream.Serialization.gson thrpt 97303.282 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 454046.530 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 290249.194 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 96411.871 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 82319.371 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 246560.093 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 91875.463 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 222870.307 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 251734.825 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 117680.708 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 90376.284 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 77917.828 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 113015.953 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt index 91fe48d..522ab7b 100644 --- a/output/users-ser-1-10.txt +++ b/output/users-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=957752366153 as seed for Random -41337.938 ops/s -Iteration 1: 57414.609 ops/s +# Warmup Iteration 1: Using SEED=941696452211 as seed for Random +55579.277 ops/s +Iteration 1: 66367.695 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 57414.609 ops/s + 66367.695 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:10 +# Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=971105880107 as seed for Random -35403.331 ops/s -Iteration 1: 48628.596 ops/s +# Warmup Iteration 1: Using SEED=954789103851 as seed for Random +45538.301 ops/s +Iteration 1: 54249.911 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 48628.596 ops/s + 54249.911 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:52 +# Run progress: 6.06% complete, ETA 00:06:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=984339578022 as seed for Random +# Warmup Iteration 1: Using SEED=967883455094 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -67,8 +67,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -88,7 +87,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -102,7 +102,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -121,6 +122,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -362,8 +371,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -382,14 +390,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more @@ -406,15 +406,15 @@ Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:37 +# Run progress: 9.09% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=985512650782 as seed for Random -62984.606 ops/s -Iteration 1: 71211.062 ops/s +# Warmup Iteration 1: Using SEED=968934855327 as seed for Random +66269.145 ops/s +Iteration 1: 82606.827 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 71211.062 ops/s + 82606.827 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:57 +# Run progress: 12.12% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=998819609055 as seed for Random -50864.180 ops/s -Iteration 1: 55454.956 ops/s +# Warmup Iteration 1: Using SEED=982073364401 as seed for Random +55808.134 ops/s +Iteration 1: 60362.870 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 55454.956 ops/s + 60362.870 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:04 +# Run progress: 15.15% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1012123689761 as seed for Random -15839.724 ops/s -Iteration 1: 29486.298 ops/s +# Warmup Iteration 1: Using SEED=995192343152 as seed for Random +45135.127 ops/s +Iteration 1: 51576.812 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 29486.298 ops/s + 51576.812 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:04 +# Run progress: 18.18% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1025366562487 as seed for Random -383.948 ops/s -Iteration 1: 360.226 ops/s +# Warmup Iteration 1: Using SEED=1008281029066 as seed for Random +500.833 ops/s +Iteration 1: 341.886 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 360.226 ops/s + 341.886 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:01 +# Run progress: 21.21% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1038767299952 as seed for Random -25593.998 ops/s -Iteration 1: 34023.374 ops/s +# Warmup Iteration 1: Using SEED=1021591858676 as seed for Random +34831.222 ops/s +Iteration 1: 41502.378 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 34023.374 ops/s + 41502.378 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:54 +# Run progress: 24.24% complete, ETA 00:04:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1052057041001 as seed for Random -14220.837 ops/s -Iteration 1: 16472.982 ops/s +# Warmup Iteration 1: Using SEED=1034640936992 as seed for Random +15101.002 ops/s +Iteration 1: 18298.656 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 16472.982 ops/s + 18298.656 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:47 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1065368267328 as seed for Random -39783.053 ops/s -Iteration 1: 46892.006 ops/s +# Warmup Iteration 1: Using SEED=1047834610446 as seed for Random +47983.210 ops/s +Iteration 1: 54832.619 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 46892.006 ops/s + 54832.619 ops/s # JMH version: 1.33 @@ -567,20 +567,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:38 +# Run progress: 30.30% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1078765239403 as seed for Random +# Warmup Iteration 1: Using SEED=1060935902494 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -35895.855 ops/s -Iteration 1: 44653.746 ops/s +44008.827 ops/s +Iteration 1: 57298.673 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 44653.746 ops/s + 57298.673 ops/s # JMH version: 1.33 @@ -595,15 +595,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:28 +# Run progress: 33.33% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1091980343207 as seed for Random -43059.385 ops/s -Iteration 1: 49319.636 ops/s +# Warmup Iteration 1: Using SEED=1074001748534 as seed for Random +44910.067 ops/s +Iteration 1: 52596.559 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 49319.636 ops/s + 52596.559 ops/s # JMH version: 1.33 @@ -618,15 +618,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:18 +# Run progress: 36.36% complete, ETA 00:04:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1105282817724 as seed for Random -5126.413 ops/s -Iteration 1: 10632.289 ops/s +# Warmup Iteration 1: Using SEED=1087090865889 as seed for Random +7879.821 ops/s +Iteration 1: 11653.416 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 10632.289 ops/s + 11653.416 ops/s # JMH version: 1.33 @@ -641,15 +641,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:07 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1118606073594 as seed for Random -13589.032 ops/s -Iteration 1: 19044.174 ops/s +# Warmup Iteration 1: Using SEED=1100257775612 as seed for Random +16839.401 ops/s +Iteration 1: 17808.646 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 19044.174 ops/s + 17808.646 ops/s # JMH version: 1.33 @@ -664,20 +664,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:56 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1131822876271 as seed for Random +# Warmup Iteration 1: Using SEED=1113387396877 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -38468.503 ops/s -Iteration 1: 48057.192 ops/s +41555.701 ops/s +Iteration 1: 59129.129 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 48057.192 ops/s + 59129.129 ops/s # JMH version: 1.33 @@ -692,20 +692,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:44 +# Run progress: 45.45% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1145120123447 as seed for Random +# Warmup Iteration 1: Using SEED=1126461009673 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -12763.711 ops/s -Iteration 1: 17330.002 ops/s +17863.052 ops/s +Iteration 1: 19637.516 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 17330.002 ops/s + 19637.516 ops/s # JMH version: 1.33 @@ -720,15 +720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:33 +# Run progress: 48.48% complete, ETA 00:03:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1158452994514 as seed for Random -18156.472 ops/s -Iteration 1: 38645.698 ops/s +# Warmup Iteration 1: Using SEED=1139621319543 as seed for Random +34050.212 ops/s +Iteration 1: 58351.069 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 38645.698 ops/s + 58351.069 ops/s # JMH version: 1.33 @@ -743,15 +743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:21 +# Run progress: 51.52% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1171731014745 as seed for Random -17857.451 ops/s -Iteration 1: 22415.914 ops/s +# Warmup Iteration 1: Using SEED=1152731853809 as seed for Random +20164.494 ops/s +Iteration 1: 27253.043 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 22415.914 ops/s + 27253.043 ops/s # JMH version: 1.33 @@ -766,15 +766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:09 +# Run progress: 54.55% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1184911912877 as seed for Random -8436.452 ops/s -Iteration 1: 15905.577 ops/s +# Warmup Iteration 1: Using SEED=1165879622743 as seed for Random +9453.152 ops/s +Iteration 1: 20070.551 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 15905.577 ops/s + 20070.551 ops/s # JMH version: 1.33 @@ -789,15 +789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:57 +# Run progress: 57.58% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1198199068900 as seed for Random -24000.387 ops/s -Iteration 1: 33369.742 ops/s +# Warmup Iteration 1: Using SEED=1179010824335 as seed for Random +27562.930 ops/s +Iteration 1: 38389.401 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 33369.742 ops/s + 38389.401 ops/s # JMH version: 1.33 @@ -812,15 +812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:44 +# Run progress: 60.61% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1211527455790 as seed for Random -10352.647 ops/s -Iteration 1: 11539.905 ops/s +# Warmup Iteration 1: Using SEED=1192245506893 as seed for Random +9133.969 ops/s +Iteration 1: 14507.295 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 11539.905 ops/s + 14507.295 ops/s # JMH version: 1.33 @@ -835,15 +835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:32 +# Run progress: 63.64% complete, ETA 00:02:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1224965303885 as seed for Random -30303.260 ops/s -Iteration 1: 48198.857 ops/s +# Warmup Iteration 1: Using SEED=1205412571949 as seed for Random +40727.741 ops/s +Iteration 1: 56673.003 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 48198.857 ops/s + 56673.003 ops/s # JMH version: 1.33 @@ -858,15 +858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:20 +# Run progress: 66.67% complete, ETA 00:02:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1238257231011 as seed for Random -17967.546 ops/s -Iteration 1: 36333.053 ops/s +# Warmup Iteration 1: Using SEED=1218542458151 as seed for Random +31684.897 ops/s +Iteration 1: 42668.887 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 36333.053 ops/s + 42668.887 ops/s # JMH version: 1.33 @@ -881,15 +881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:07 +# Run progress: 69.70% complete, ETA 00:02:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1251668415259 as seed for Random -5262.203 ops/s -Iteration 1: 12535.007 ops/s +# Warmup Iteration 1: Using SEED=1231678828274 as seed for Random +4639.855 ops/s +Iteration 1: 11461.108 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 12535.007 ops/s + 11461.108 ops/s # JMH version: 1.33 @@ -904,15 +904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:55 +# Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1264994765991 as seed for Random -3388.645 ops/s -Iteration 1: 6576.154 ops/s +# Warmup Iteration 1: Using SEED=1244818115580 as seed for Random +4873.488 ops/s +Iteration 1: 7554.578 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 6576.154 ops/s + 7554.578 ops/s # JMH version: 1.33 @@ -927,15 +927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:42 +# Run progress: 75.76% complete, ETA 00:01:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1278276868410 as seed for Random -8610.551 ops/s -Iteration 1: 15417.847 ops/s +# Warmup Iteration 1: Using SEED=1257865743015 as seed for Random +12826.283 ops/s +Iteration 1: 23669.805 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 15417.847 ops/s + 23669.805 ops/s # JMH version: 1.33 @@ -950,15 +950,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:29 +# Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1291599086811 as seed for Random -2843.051 ops/s -Iteration 1: 7199.525 ops/s +# Warmup Iteration 1: Using SEED=1271004153812 as seed for Random +4728.002 ops/s +Iteration 1: 9209.180 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 7199.525 ops/s + 9209.180 ops/s # JMH version: 1.33 @@ -973,15 +973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:17 +# Run progress: 81.82% complete, ETA 00:01:16 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1304909035950 as seed for Random -6464.436 ops/s -Iteration 1: 21653.378 ops/s +# Warmup Iteration 1: Using SEED=1284128850841 as seed for Random +15670.639 ops/s +Iteration 1: 31115.667 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 21653.378 ops/s + 31115.667 ops/s # JMH version: 1.33 @@ -996,15 +996,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:04 +# Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1318075792990 as seed for Random -12154.212 ops/s -Iteration 1: 18611.905 ops/s +# Warmup Iteration 1: Using SEED=1297252985998 as seed for Random +16699.605 ops/s +Iteration 1: 20395.229 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 18611.905 ops/s + 20395.229 ops/s # JMH version: 1.33 @@ -1019,15 +1019,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:51 +# Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1331395653385 as seed for Random -2287.034 ops/s -Iteration 1: 7790.220 ops/s +# Warmup Iteration 1: Using SEED=1310436847412 as seed for Random +6805.389 ops/s +Iteration 1: 9975.246 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 7790.220 ops/s + 9975.246 ops/s # JMH version: 1.33 @@ -1044,13 +1044,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1344710435396 as seed for Random -1604.539 ops/s -Iteration 1: 7411.745 ops/s +# Warmup Iteration 1: Using SEED=1323606824123 as seed for Random +6735.275 ops/s +Iteration 1: 9110.050 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 7411.745 ops/s + 9110.050 ops/s # JMH version: 1.33 @@ -1067,13 +1067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1358169419321 as seed for Random -2289.889 ops/s -Iteration 1: 6070.390 ops/s +# Warmup Iteration 1: Using SEED=1336701939950 as seed for Random +3895.446 ops/s +Iteration 1: 7288.324 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 6070.390 ops/s + 7288.324 ops/s # JMH version: 1.33 @@ -1090,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1371474266417 as seed for Random -6721.341 ops/s -Iteration 1: 8060.713 ops/s +# Warmup Iteration 1: Using SEED=1349745075562 as seed for Random +7795.510 ops/s +Iteration 1: 9723.502 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 8060.713 ops/s + 9723.502 ops/s -# Run complete. Total time: 00:07:07 +# Run complete. Total time: 00:07:01 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1108,35 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 57414.609 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 48628.596 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 71211.062 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 55454.956 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 29486.298 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 360.226 ops/s -c.g.f.j.databind.Serialization.genson thrpt 34023.374 ops/s -c.g.f.j.databind.Serialization.gson thrpt 16472.982 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 46892.006 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 44653.746 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 49319.636 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 10632.289 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 19044.174 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 48057.192 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 17330.002 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 38645.698 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 22415.914 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 15905.577 ops/s -c.g.f.j.stream.Serialization.genson thrpt 33369.742 ops/s -c.g.f.j.stream.Serialization.gson thrpt 11539.905 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 48198.857 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 36333.053 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 12535.007 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 6576.154 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 15417.847 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 7199.525 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 21653.378 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 18611.905 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 7790.220 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 7411.745 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 6070.390 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 8060.713 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 66367.695 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 54249.911 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 82606.827 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 60362.870 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 51576.812 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 341.886 ops/s +c.g.f.j.databind.Serialization.genson thrpt 41502.378 ops/s +c.g.f.j.databind.Serialization.gson thrpt 18298.656 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 54832.619 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 57298.673 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 52596.559 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 11653.416 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 17808.646 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 59129.129 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 19637.516 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 58351.069 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 27253.043 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 20070.551 ops/s +c.g.f.j.stream.Serialization.genson thrpt 38389.401 ops/s +c.g.f.j.stream.Serialization.gson thrpt 14507.295 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 56673.003 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 42668.887 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 11461.108 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 7554.578 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 23669.805 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 9209.180 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 31115.667 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 20395.229 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 9975.246 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 9110.050 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 7288.324 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 9723.502 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt index b1c38c3..58dad22 100644 --- a/output/users-ser-1-100.txt +++ b/output/users-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1813853282004 as seed for Random -4651.270 ops/s -Iteration 1: 5874.803 ops/s +# Warmup Iteration 1: Using SEED=1784753921278 as seed for Random +5837.089 ops/s +Iteration 1: 6995.896 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 5874.803 ops/s + 6995.896 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:09 +# Run progress: 3.03% complete, ETA 00:07:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1827211084415 as seed for Random -4162.949 ops/s -Iteration 1: 5323.428 ops/s +# Warmup Iteration 1: Using SEED=1797966298273 as seed for Random +4904.377 ops/s +Iteration 1: 5967.622 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 5323.428 ops/s + 5967.622 ops/s # JMH version: 1.33 @@ -56,12 +56,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:54 +# Run progress: 6.06% complete, ETA 00:06:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1840548595038 as seed for Random +# Warmup Iteration 1: Using SEED=1811200580959 as seed for Random -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -80,6 +81,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -287,7 +296,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -307,8 +317,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -362,8 +371,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -382,14 +390,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more @@ -406,15 +406,15 @@ Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:40 +# Run progress: 9.09% complete, ETA 00:04:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1841778681662 as seed for Random -6276.920 ops/s -Iteration 1: 6532.490 ops/s +# Warmup Iteration 1: Using SEED=1812196904901 as seed for Random +7486.616 ops/s +Iteration 1: 8628.007 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 6532.490 ops/s + 8628.007 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:59 +# Run progress: 12.12% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1855081422262 as seed for Random -4732.037 ops/s -Iteration 1: 5456.799 ops/s +# Warmup Iteration 1: Using SEED=1825395352347 as seed for Random +5968.581 ops/s +Iteration 1: 6564.218 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 5456.799 ops/s + 6564.218 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:06 +# Run progress: 15.15% complete, ETA 00:05:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1868442144039 as seed for Random -1628.688 ops/s -Iteration 1: 2466.033 ops/s +# Warmup Iteration 1: Using SEED=1838511073572 as seed for Random +2684.646 ops/s +Iteration 1: 3098.098 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 2466.033 ops/s + 3098.098 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:05 +# Run progress: 18.18% complete, ETA 00:05:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1881751405708 as seed for Random -70.590 ops/s -Iteration 1: 118.971 ops/s +# Warmup Iteration 1: Using SEED=1851692472058 as seed for Random +103.938 ops/s +Iteration 1: 133.900 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 118.971 ops/s + 133.900 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:03 +# Run progress: 21.21% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1895588535670 as seed for Random -873.485 ops/s -Iteration 1: 3355.869 ops/s +# Warmup Iteration 1: Using SEED=1865130722129 as seed for Random +3226.619 ops/s +Iteration 1: 4565.546 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 3355.869 ops/s + 4565.546 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:57 +# Run progress: 24.24% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1908911733369 as seed for Random -1161.531 ops/s -Iteration 1: 1832.768 ops/s +# Warmup Iteration 1: Using SEED=1878342269722 as seed for Random +1226.045 ops/s +Iteration 1: 2468.799 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1832.768 ops/s + 2468.799 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:49 +# Run progress: 27.27% complete, ETA 00:04:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1922253744963 as seed for Random -3591.050 ops/s -Iteration 1: 4098.045 ops/s +# Warmup Iteration 1: Using SEED=1891481085818 as seed for Random +4925.227 ops/s +Iteration 1: 6093.193 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 4098.045 ops/s + 6093.193 ops/s # JMH version: 1.33 @@ -567,20 +567,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:40 +# Run progress: 30.30% complete, ETA 00:04:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1935633226546 as seed for Random +# Warmup Iteration 1: Using SEED=1904571787034 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -3979.290 ops/s -Iteration 1: 4555.039 ops/s +3822.968 ops/s +Iteration 1: 4367.450 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 4555.039 ops/s + 4367.450 ops/s # JMH version: 1.33 @@ -595,15 +595,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:30 +# Run progress: 33.33% complete, ETA 00:04:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1948980351062 as seed for Random -3702.707 ops/s -Iteration 1: 4567.911 ops/s +# Warmup Iteration 1: Using SEED=1917720837962 as seed for Random +4493.609 ops/s +Iteration 1: 5306.116 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 4567.911 ops/s + 5306.116 ops/s # JMH version: 1.33 @@ -618,15 +618,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:19 +# Run progress: 36.36% complete, ETA 00:04:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1962306099483 as seed for Random -700.285 ops/s -Iteration 1: 928.910 ops/s +# Warmup Iteration 1: Using SEED=1930906264654 as seed for Random +1040.985 ops/s +Iteration 1: 1319.389 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 928.910 ops/s + 1319.389 ops/s # JMH version: 1.33 @@ -641,15 +641,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:09 +# Run progress: 39.39% complete, ETA 00:04:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1975649648916 as seed for Random -1291.069 ops/s -Iteration 1: 1653.591 ops/s +# Warmup Iteration 1: Using SEED=1944047637235 as seed for Random +1776.248 ops/s +Iteration 1: 2226.904 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 1653.591 ops/s + 2226.904 ops/s # JMH version: 1.33 @@ -664,20 +664,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:57 +# Run progress: 42.42% complete, ETA 00:03:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1988960457816 as seed for Random +# Warmup Iteration 1: Using SEED=1957202039264 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -4434.329 ops/s -Iteration 1: 5482.125 ops/s +5707.064 ops/s +Iteration 1: 6133.477 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 5482.125 ops/s + 6133.477 ops/s # JMH version: 1.33 @@ -692,20 +692,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:46 +# Run progress: 45.45% complete, ETA 00:03:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2002268685138 as seed for Random +# Warmup Iteration 1: Using SEED=1970323723737 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -1060.795 ops/s -Iteration 1: 1486.551 ops/s +1912.874 ops/s +Iteration 1: 2030.756 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 1486.551 ops/s + 2030.756 ops/s # JMH version: 1.33 @@ -720,15 +720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:34 +# Run progress: 48.48% complete, ETA 00:03:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2015566481425 as seed for Random -2684.819 ops/s -Iteration 1: 4377.459 ops/s +# Warmup Iteration 1: Using SEED=1983467705669 as seed for Random +4901.467 ops/s +Iteration 1: 6573.926 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 4377.459 ops/s + 6573.926 ops/s # JMH version: 1.33 @@ -743,15 +743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:22 +# Run progress: 51.52% complete, ETA 00:03:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2028898562125 as seed for Random -1840.216 ops/s -Iteration 1: 2579.439 ops/s +# Warmup Iteration 1: Using SEED=1996553737813 as seed for Random +1685.665 ops/s +Iteration 1: 2923.469 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2579.439 ops/s + 2923.469 ops/s # JMH version: 1.33 @@ -766,15 +766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:10 +# Run progress: 54.55% complete, ETA 00:03:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2042264519120 as seed for Random -673.618 ops/s -Iteration 1: 1800.193 ops/s +# Warmup Iteration 1: Using SEED=2009702142683 as seed for Random +1052.734 ops/s +Iteration 1: 2094.316 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 1800.193 ops/s + 2094.316 ops/s # JMH version: 1.33 @@ -789,15 +789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:58 +# Run progress: 57.58% complete, ETA 00:02:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2055582099064 as seed for Random -2673.105 ops/s -Iteration 1: 3257.927 ops/s +# Warmup Iteration 1: Using SEED=2022852763680 as seed for Random +2723.845 ops/s +Iteration 1: 3585.569 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 3257.927 ops/s + 3585.569 ops/s # JMH version: 1.33 @@ -812,15 +812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:45 +# Run progress: 60.61% complete, ETA 00:02:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2068971881433 as seed for Random -1062.172 ops/s -Iteration 1: 1306.262 ops/s +# Warmup Iteration 1: Using SEED=2036037502435 as seed for Random +1162.839 ops/s +Iteration 1: 1335.655 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 1306.262 ops/s + 1335.655 ops/s # JMH version: 1.33 @@ -835,15 +835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:33 +# Run progress: 63.64% complete, ETA 00:02:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2082310867348 as seed for Random -3063.522 ops/s -Iteration 1: 4652.920 ops/s +# Warmup Iteration 1: Using SEED=2049275457255 as seed for Random +3893.227 ops/s +Iteration 1: 5740.447 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 4652.920 ops/s + 5740.447 ops/s # JMH version: 1.33 @@ -858,15 +858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:20 +# Run progress: 66.67% complete, ETA 00:02:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2095714372688 as seed for Random -3140.088 ops/s -Iteration 1: 4334.814 ops/s +# Warmup Iteration 1: Using SEED=2062417034230 as seed for Random +2931.647 ops/s +Iteration 1: 4169.756 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 4334.814 ops/s + 4169.756 ops/s # JMH version: 1.33 @@ -881,15 +881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:08 +# Run progress: 69.70% complete, ETA 00:02:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2109088279748 as seed for Random -367.181 ops/s -Iteration 1: 1215.412 ops/s +# Warmup Iteration 1: Using SEED=2075728097890 as seed for Random +715.027 ops/s +Iteration 1: 1182.425 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 1215.412 ops/s + 1182.425 ops/s # JMH version: 1.33 @@ -904,15 +904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:55 +# Run progress: 72.73% complete, ETA 00:01:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2122435735620 as seed for Random -441.992 ops/s -Iteration 1: 603.224 ops/s +# Warmup Iteration 1: Using SEED=2088909750592 as seed for Random +610.424 ops/s +Iteration 1: 708.166 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 603.224 ops/s + 708.166 ops/s # JMH version: 1.33 @@ -927,15 +927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:43 +# Run progress: 75.76% complete, ETA 00:01:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2135764374573 as seed for Random -870.291 ops/s -Iteration 1: 1524.699 ops/s +# Warmup Iteration 1: Using SEED=2102120343517 as seed for Random +502.339 ops/s +Iteration 1: 2031.102 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 1524.699 ops/s + 2031.102 ops/s # JMH version: 1.33 @@ -950,15 +950,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:30 +# Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2149187028815 as seed for Random -183.795 ops/s -Iteration 1: 532.940 ops/s +# Warmup Iteration 1: Using SEED=2115234028005 as seed for Random +545.005 ops/s +Iteration 1: 853.807 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 532.940 ops/s + 853.807 ops/s # JMH version: 1.33 @@ -973,15 +973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:17 +# Run progress: 81.82% complete, ETA 00:01:16 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2162595749468 as seed for Random -1589.346 ops/s -Iteration 1: 2421.645 ops/s +# Warmup Iteration 1: Using SEED=2128393130508 as seed for Random +1553.724 ops/s +Iteration 1: 2979.316 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 2421.645 ops/s + 2979.316 ops/s # JMH version: 1.33 @@ -996,15 +996,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:04 +# Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2175940241022 as seed for Random -1416.406 ops/s -Iteration 1: 1713.467 ops/s +# Warmup Iteration 1: Using SEED=2141587732447 as seed for Random +1586.755 ops/s +Iteration 1: 2116.924 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 1713.467 ops/s + 2116.924 ops/s # JMH version: 1.33 @@ -1021,13 +1021,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2189379578044 as seed for Random -614.852 ops/s -Iteration 1: 743.801 ops/s +# Warmup Iteration 1: Using SEED=2154753852639 as seed for Random +571.075 ops/s +Iteration 1: 886.993 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 743.801 ops/s + 886.993 ops/s # JMH version: 1.33 @@ -1044,13 +1044,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2202733365839 as seed for Random -304.671 ops/s -Iteration 1: 604.225 ops/s +# Warmup Iteration 1: Using SEED=2167941598394 as seed for Random +562.671 ops/s +Iteration 1: 692.885 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 604.225 ops/s + 692.885 ops/s # JMH version: 1.33 @@ -1067,13 +1067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2216099703745 as seed for Random -171.432 ops/s -Iteration 1: 466.924 ops/s +# Warmup Iteration 1: Using SEED=2181226897663 as seed for Random +252.631 ops/s +Iteration 1: 539.431 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 466.924 ops/s + 539.431 ops/s # JMH version: 1.33 @@ -1090,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2229533739880 as seed for Random -650.208 ops/s -Iteration 1: 771.551 ops/s +# Warmup Iteration 1: Using SEED=2194426351138 as seed for Random +740.473 ops/s +Iteration 1: 919.614 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 771.551 ops/s + 919.614 ops/s -# Run complete. Total time: 00:07:09 +# Run complete. Total time: 00:07:02 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1108,35 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 5874.803 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 5323.428 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 6532.490 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 5456.799 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 2466.033 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 118.971 ops/s -c.g.f.j.databind.Serialization.genson thrpt 3355.869 ops/s -c.g.f.j.databind.Serialization.gson thrpt 1832.768 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 4098.045 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 4555.039 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 4567.911 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 928.910 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 1653.591 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 5482.125 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 1486.551 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 4377.459 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 2579.439 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 1800.193 ops/s -c.g.f.j.stream.Serialization.genson thrpt 3257.927 ops/s -c.g.f.j.stream.Serialization.gson thrpt 1306.262 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 4652.920 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 4334.814 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 1215.412 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 603.224 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 1524.699 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 532.940 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 2421.645 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 1713.467 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 743.801 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 604.225 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 466.924 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 771.551 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 6995.896 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 5967.622 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 8628.007 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 6564.218 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 3098.098 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 133.900 ops/s +c.g.f.j.databind.Serialization.genson thrpt 4565.546 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2468.799 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 6093.193 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 4367.450 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 5306.116 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 1319.389 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 2226.904 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 6133.477 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 2030.756 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 6573.926 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 2923.469 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2094.316 ops/s +c.g.f.j.stream.Serialization.genson thrpt 3585.569 ops/s +c.g.f.j.stream.Serialization.gson thrpt 1335.655 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 5740.447 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 4169.756 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 1182.425 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 708.166 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2031.102 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 853.807 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 2979.316 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 2116.924 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 886.993 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 692.885 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 539.431 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 919.614 ops/s diff --git a/output/users-ser-1-1000.txt b/output/users-ser-1-1000.txt index 44920e4..956a539 100644 --- a/output/users-ser-1-1000.txt +++ b/output/users-ser-1-1000.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2673694899596 as seed for Random -506.005 ops/s -Iteration 1: 567.881 ops/s +# Warmup Iteration 1: Using SEED=2630918871638 as seed for Random +586.243 ops/s +Iteration 1: 685.364 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 567.881 ops/s + 685.364 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:14 +# Run progress: 3.03% complete, ETA 00:07:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2687177027500 as seed for Random -298.858 ops/s -Iteration 1: 361.258 ops/s +# Warmup Iteration 1: Using SEED=2644184424972 as seed for Random +348.725 ops/s +Iteration 1: 457.675 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 361.258 ops/s + 457.675 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:07:01 +# Run progress: 6.06% complete, ETA 00:06:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2700792843203 as seed for Random +# Warmup Iteration 1: Using SEED=2657471925689 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -67,7 +67,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -167,8 +168,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -322,7 +322,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -341,6 +342,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -362,8 +371,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -382,14 +390,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more @@ -406,15 +406,15 @@ Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:45 +# Run progress: 9.09% complete, ETA 00:04:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2702074025028 as seed for Random -504.482 ops/s -Iteration 1: 598.530 ops/s +# Warmup Iteration 1: Using SEED=2658579289405 as seed for Random +710.079 ops/s +Iteration 1: 757.298 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 598.530 ops/s + 757.298 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:05:04 +# Run progress: 12.12% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2715555039667 as seed for Random -549.353 ops/s -Iteration 1: 589.876 ops/s +# Warmup Iteration 1: Using SEED=2671832636365 as seed for Random +680.504 ops/s +Iteration 1: 716.442 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 589.876 ops/s + 716.442 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:10 +# Run progress: 15.15% complete, ETA 00:05:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2729034980483 as seed for Random -123.981 ops/s -Iteration 1: 175.397 ops/s +# Warmup Iteration 1: Using SEED=2685070902124 as seed for Random +185.068 ops/s +Iteration 1: 216.540 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 175.397 ops/s + 216.540 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:11 +# Run progress: 18.18% complete, ETA 00:05:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2742728420714 as seed for Random -21.086 ops/s -Iteration 1: 31.344 ops/s +# Warmup Iteration 1: Using SEED=2698491034891 as seed for Random +23.105 ops/s +Iteration 1: 35.905 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 31.344 ops/s + 35.905 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:12 +# Run progress: 21.21% complete, ETA 00:05:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2757777167086 as seed for Random -173.215 ops/s -Iteration 1: 306.007 ops/s +# Warmup Iteration 1: Using SEED=2712840007337 as seed for Random +390.442 ops/s +Iteration 1: 448.822 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 306.007 ops/s + 448.822 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:05:05 +# Run progress: 24.24% complete, ETA 00:04:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2771271701490 as seed for Random -140.351 ops/s -Iteration 1: 159.865 ops/s +# Warmup Iteration 1: Using SEED=2726103072204 as seed for Random +167.399 ops/s +Iteration 1: 193.532 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 159.865 ops/s + 193.532 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:56 +# Run progress: 27.27% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2784916807960 as seed for Random -316.113 ops/s -Iteration 1: 386.775 ops/s +# Warmup Iteration 1: Using SEED=2739597306498 as seed for Random +485.875 ops/s +Iteration 1: 572.937 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 386.775 ops/s + 572.937 ops/s # JMH version: 1.33 @@ -567,20 +567,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:47 +# Run progress: 30.30% complete, ETA 00:04:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2798539917504 as seed for Random +# Warmup Iteration 1: Using SEED=2752810535696 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -289.383 ops/s -Iteration 1: 356.214 ops/s +353.072 ops/s +Iteration 1: 417.129 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 356.214 ops/s + 417.129 ops/s # JMH version: 1.33 @@ -595,15 +595,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:36 +# Run progress: 33.33% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2812066497398 as seed for Random -410.815 ops/s -Iteration 1: 509.062 ops/s +# Warmup Iteration 1: Using SEED=2766154217442 as seed for Random +491.475 ops/s +Iteration 1: 587.267 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 509.062 ops/s + 587.267 ops/s # JMH version: 1.33 @@ -618,15 +618,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:26 +# Run progress: 36.36% complete, ETA 00:04:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2825591911171 as seed for Random -82.556 ops/s -Iteration 1: 96.173 ops/s +# Warmup Iteration 1: Using SEED=2779380213095 as seed for Random +121.934 ops/s +Iteration 1: 134.091 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 96.173 ops/s + 134.091 ops/s # JMH version: 1.33 @@ -641,15 +641,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:15 +# Run progress: 39.39% complete, ETA 00:04:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2839563164438 as seed for Random -132.657 ops/s -Iteration 1: 169.963 ops/s +# Warmup Iteration 1: Using SEED=2792931281803 as seed for Random +164.452 ops/s +Iteration 1: 209.004 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 169.963 ops/s + 209.004 ops/s # JMH version: 1.33 @@ -664,20 +664,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:03 +# Run progress: 42.42% complete, ETA 00:03:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2853286008001 as seed for Random +# Warmup Iteration 1: Using SEED=2806483782967 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -439.216 ops/s -Iteration 1: 509.976 ops/s +562.393 ops/s +Iteration 1: 625.946 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 509.976 ops/s + 625.946 ops/s # JMH version: 1.33 @@ -692,20 +692,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:51 +# Run progress: 45.45% complete, ETA 00:03:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2866800087274 as seed for Random +# Warmup Iteration 1: Using SEED=2819732415564 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -133.815 ops/s -Iteration 1: 153.070 ops/s +155.405 ops/s +Iteration 1: 171.558 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 153.070 ops/s + 171.558 ops/s # JMH version: 1.33 @@ -720,15 +720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:39 +# Run progress: 48.48% complete, ETA 00:03:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2880618571888 as seed for Random -329.543 ops/s -Iteration 1: 527.059 ops/s +# Warmup Iteration 1: Using SEED=2833146713706 as seed for Random +308.191 ops/s +Iteration 1: 649.457 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 527.059 ops/s + 649.457 ops/s # JMH version: 1.33 @@ -743,15 +743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:27 +# Run progress: 51.52% complete, ETA 00:03:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2894111468243 as seed for Random -165.248 ops/s -Iteration 1: 200.977 ops/s +# Warmup Iteration 1: Using SEED=2846436250582 as seed for Random +210.985 ops/s +Iteration 1: 265.445 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 200.977 ops/s + 265.445 ops/s # JMH version: 1.33 @@ -766,15 +766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:15 +# Run progress: 54.55% complete, ETA 00:03:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2907697397677 as seed for Random -129.144 ops/s -Iteration 1: 202.149 ops/s +# Warmup Iteration 1: Using SEED=2859754187536 as seed for Random +138.606 ops/s +Iteration 1: 217.777 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 202.149 ops/s + 217.777 ops/s # JMH version: 1.33 @@ -789,15 +789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:03:02 +# Run progress: 57.58% complete, ETA 00:02:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2921340541914 as seed for Random -202.344 ops/s -Iteration 1: 341.714 ops/s +# Warmup Iteration 1: Using SEED=2873103911795 as seed for Random +254.246 ops/s +Iteration 1: 334.783 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 341.714 ops/s + 334.783 ops/s # JMH version: 1.33 @@ -812,15 +812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:49 +# Run progress: 60.61% complete, ETA 00:02:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2934851529907 as seed for Random -101.659 ops/s -Iteration 1: 116.183 ops/s +# Warmup Iteration 1: Using SEED=2886440230376 as seed for Random +119.427 ops/s +Iteration 1: 149.418 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 116.183 ops/s + 149.418 ops/s # JMH version: 1.33 @@ -835,15 +835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:37 +# Run progress: 63.64% complete, ETA 00:02:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2948685790388 as seed for Random -327.590 ops/s -Iteration 1: 496.939 ops/s +# Warmup Iteration 1: Using SEED=2900053217105 as seed for Random +364.345 ops/s +Iteration 1: 417.351 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 496.939 ops/s + 417.351 ops/s # JMH version: 1.33 @@ -858,15 +858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:24 +# Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2962184750842 as seed for Random -253.312 ops/s -Iteration 1: 381.881 ops/s +# Warmup Iteration 1: Using SEED=2913320330917 as seed for Random +312.653 ops/s +Iteration 1: 447.749 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 381.881 ops/s + 447.749 ops/s # JMH version: 1.33 @@ -881,15 +881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:11 +# Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2975744170888 as seed for Random -77.626 ops/s -Iteration 1: 109.108 ops/s +# Warmup Iteration 1: Using SEED=2926744638420 as seed for Random +98.999 ops/s +Iteration 1: 131.508 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 109.108 ops/s + 131.508 ops/s # JMH version: 1.33 @@ -904,15 +904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:58 +# Run progress: 72.73% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2989534855101 as seed for Random -48.073 ops/s -Iteration 1: 60.491 ops/s +# Warmup Iteration 1: Using SEED=2940254056343 as seed for Random +60.657 ops/s +Iteration 1: 72.359 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 60.491 ops/s + 72.359 ops/s # JMH version: 1.33 @@ -927,15 +927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:45 +# Run progress: 75.76% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3003853773855 as seed for Random -82.257 ops/s -Iteration 1: 146.356 ops/s +# Warmup Iteration 1: Using SEED=2954233934361 as seed for Random +114.248 ops/s +Iteration 1: 194.060 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 146.356 ops/s + 194.060 ops/s # JMH version: 1.33 @@ -950,15 +950,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:32 +# Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3017643958370 as seed for Random -15.571 ops/s -Iteration 1: 21.483 ops/s +# Warmup Iteration 1: Using SEED=2967652354958 as seed for Random +16.792 ops/s +Iteration 1: 25.584 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 21.483 ops/s + 25.584 ops/s # JMH version: 1.33 @@ -973,15 +973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:19 +# Run progress: 81.82% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3033549125191 as seed for Random -151.335 ops/s -Iteration 1: 250.152 ops/s +# Warmup Iteration 1: Using SEED=2983001556999 as seed for Random +252.463 ops/s +Iteration 1: 344.869 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 250.152 ops/s + 344.869 ops/s # JMH version: 1.33 @@ -996,15 +996,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:06 +# Run progress: 84.85% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3047153433965 as seed for Random -139.758 ops/s -Iteration 1: 163.455 ops/s +# Warmup Iteration 1: Using SEED=2996320917119 as seed for Random +177.744 ops/s +Iteration 1: 232.026 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 163.455 ops/s + 232.026 ops/s # JMH version: 1.33 @@ -1019,15 +1019,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:53 +# Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3060799066525 as seed for Random -32.557 ops/s -Iteration 1: 38.626 ops/s +# Warmup Iteration 1: Using SEED=3009780184588 as seed for Random +36.558 ops/s +Iteration 1: 45.052 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 38.626 ops/s + 45.052 ops/s # JMH version: 1.33 @@ -1042,15 +1042,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:40 +# Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3075471114516 as seed for Random -10.934 ops/s -Iteration 1: 13.763 ops/s +# Warmup Iteration 1: Using SEED=3024402305575 as seed for Random +11.855 ops/s +Iteration 1: 11.480 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 13.763 ops/s + 11.480 ops/s # JMH version: 1.33 @@ -1065,15 +1065,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry -# Run progress: 93.94% complete, ETA 00:00:27 +# Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3092307669367 as seed for Random -13.376 ops/s -Iteration 1: 24.857 ops/s +# Warmup Iteration 1: Using SEED=3041904278954 as seed for Random +28.835 ops/s +Iteration 1: 30.722 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 24.857 ops/s + 30.722 ops/s # JMH version: 1.33 @@ -1090,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3108079560960 as seed for Random -33.906 ops/s -Iteration 1: 36.963 ops/s +# Warmup Iteration 1: Using SEED=3056409438475 as seed for Random +41.903 ops/s +Iteration 1: 45.811 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 36.963 ops/s + 45.811 ops/s -# Run complete. Total time: 00:07:29 +# Run complete. Total time: 00:07:19 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1108,35 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 567.881 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 361.258 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 598.530 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 589.876 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 175.397 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 31.344 ops/s -c.g.f.j.databind.Serialization.genson thrpt 306.007 ops/s -c.g.f.j.databind.Serialization.gson thrpt 159.865 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 386.775 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 356.214 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 509.062 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 96.173 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 169.963 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 509.976 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 153.070 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 527.059 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 200.977 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 202.149 ops/s -c.g.f.j.stream.Serialization.genson thrpt 341.714 ops/s -c.g.f.j.stream.Serialization.gson thrpt 116.183 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 496.939 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 381.881 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 109.108 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 60.491 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 146.356 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 21.483 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 250.152 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 163.455 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 38.626 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 13.763 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 24.857 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 36.963 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 685.364 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 457.675 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 757.298 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 716.442 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 216.540 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 35.905 ops/s +c.g.f.j.databind.Serialization.genson thrpt 448.822 ops/s +c.g.f.j.databind.Serialization.gson thrpt 193.532 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 572.937 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 417.129 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 587.267 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 134.091 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 209.004 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 625.946 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 171.558 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 649.457 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 265.445 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 217.777 ops/s +c.g.f.j.stream.Serialization.genson thrpt 334.783 ops/s +c.g.f.j.stream.Serialization.gson thrpt 149.418 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 417.351 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 447.749 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 131.508 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 72.359 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 194.060 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 25.584 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 344.869 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 232.026 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 45.052 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 11.480 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 30.722 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 45.811 ops/s From a7b6d2cf6cd97818dc974a409ad3930d56549b49 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Fri, 28 Oct 2022 20:15:09 +0000 Subject: [PATCH 27/42] result adding back to repo [skip ci] another test --- output/clients-deser-1-1.txt | 166 ++++++------- output/clients-deser-1-10.txt | 160 ++++++------- output/clients-deser-1-100.txt | 166 ++++++------- output/clients-deser-1-1000.txt | 174 +++++++------- output/clients-ser-1-1.txt | 166 ++++++------- output/clients-ser-1-10.txt | 170 ++++++------- output/clients-ser-1-100.txt | 168 ++++++------- output/clients-ser-1-1000.txt | 170 ++++++------- output/users-deser-1-1.txt | 396 +++++++++++++++--------------- output/users-deser-1-10.txt | 383 ++++++++++++++--------------- output/users-deser-1-100.txt | 394 +++++++++++++++--------------- output/users-deser-1-1000.txt | 402 +++++++++++++++---------------- output/users-ser-1-1.txt | 400 +++++++++++++++---------------- output/users-ser-1-10.txt | 404 +++++++++++++++---------------- output/users-ser-1-100.txt | 406 +++++++++++++++---------------- output/users-ser-1-1000.txt | 410 ++++++++++++++++---------------- 16 files changed, 2269 insertions(+), 2266 deletions(-) diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt index 4e0f5b7..669cce2 100644 --- a/output/clients-deser-1-1.txt +++ b/output/clients-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3712013208416 as seed for Random -93505.644 ops/s -Iteration 1: 214210.721 ops/s +# Warmup Iteration 1: Using SEED=3863932840349 as seed for Random +94243.333 ops/s +Iteration 1: 266552.054 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 214210.721 ops/s + 266552.054 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:05 +# Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3725292828900 as seed for Random -129042.417 ops/s -Iteration 1: 278011.152 ops/s +# Warmup Iteration 1: Using SEED=3877016387257 as seed for Random +83018.006 ops/s +Iteration 1: 194037.620 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 278011.152 ops/s + 194037.620 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:52 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3738516953910 as seed for Random -390459.546 ops/s -Iteration 1: 692472.252 ops/s +# Warmup Iteration 1: Using SEED=3890121957955 as seed for Random +412677.924 ops/s +Iteration 1: 716381.768 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 692472.252 ops/s + 716381.768 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3751581055097 as seed for Random -405914.206 ops/s -Iteration 1: 545963.443 ops/s +# Warmup Iteration 1: Using SEED=3903209052862 as seed for Random +464683.845 ops/s +Iteration 1: 610371.502 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 545963.443 ops/s + 610371.502 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3764713475433 as seed for Random -39495.785 ops/s -Iteration 1: 77620.237 ops/s +# Warmup Iteration 1: Using SEED=3916272103228 as seed for Random +34260.819 ops/s +Iteration 1: 147572.588 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 77620.237 ops/s + 147572.588 ops/s # JMH version: 1.33 @@ -127,13 +127,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3777952826199 as seed for Random -20874.569 ops/s -Iteration 1: 38230.059 ops/s +# Warmup Iteration 1: Using SEED=3929458512996 as seed for Random +24052.252 ops/s +Iteration 1: 49394.643 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 38230.059 ops/s + 49394.643 ops/s # JMH version: 1.33 @@ -150,13 +150,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3791098410632 as seed for Random -108238.465 ops/s -Iteration 1: 183636.746 ops/s +# Warmup Iteration 1: Using SEED=3942578587538 as seed for Random +53266.836 ops/s +Iteration 1: 129182.434 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 183636.746 ops/s + 129182.434 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3804267177115 as seed for Random -15218.768 ops/s -Iteration 1: 54167.841 ops/s +# Warmup Iteration 1: Using SEED=3955700154944 as seed for Random +103350.607 ops/s +Iteration 1: 184845.139 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 54167.841 ops/s + 184845.139 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3817431393186 as seed for Random -66630.633 ops/s -Iteration 1: 90121.164 ops/s +# Warmup Iteration 1: Using SEED=3968756570149 as seed for Random +154964.193 ops/s +Iteration 1: 357907.233 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 90121.164 ops/s + 357907.233 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3830618839971 as seed for Random +# Warmup Iteration 1: Using SEED=3981801190613 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -134666.458 ops/s -Iteration 1: 318545.987 ops/s +99463.997 ops/s +Iteration 1: 252067.749 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 318545.987 ops/s + 252067.749 ops/s # JMH version: 1.33 @@ -247,13 +247,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3843741292869 as seed for Random -128649.591 ops/s -Iteration 1: 308065.777 ops/s +# Warmup Iteration 1: Using SEED=3994873093333 as seed for Random +135098.079 ops/s +Iteration 1: 381649.614 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 308065.777 ops/s + 381649.614 ops/s # JMH version: 1.33 @@ -270,13 +270,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3856882522383 as seed for Random -45171.530 ops/s -Iteration 1: 101968.368 ops/s +# Warmup Iteration 1: Using SEED=4007953440456 as seed for Random +83357.389 ops/s +Iteration 1: 164723.490 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 101968.368 ops/s + 164723.490 ops/s # JMH version: 1.33 @@ -293,18 +293,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3870031017070 as seed for Random +# Warmup Iteration 1: Using SEED=4021018968239 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -133220.172 ops/s -Iteration 1: 188796.336 ops/s +146472.336 ops/s +Iteration 1: 377677.919 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 188796.336 ops/s + 377677.919 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3883156595916 as seed for Random -40699.250 ops/s -Iteration 1: 136684.644 ops/s +# Warmup Iteration 1: Using SEED=4034135626375 as seed for Random +27628.945 ops/s +Iteration 1: 52009.821 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 136684.644 ops/s + 52009.821 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3896341101088 as seed for Random -127132.045 ops/s -Iteration 1: 213481.051 ops/s +# Warmup Iteration 1: Using SEED=4047255273606 as seed for Random +42414.816 ops/s +Iteration 1: 129176.046 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 213481.051 ops/s + 129176.046 ops/s -# Run complete. Total time: 00:03:17 +# Run complete. Total time: 00:03:16 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 214210.721 ops/s -Deserialization.avajejsonb_jackson thrpt 278011.152 ops/s -Deserialization.dsljson thrpt 692472.252 ops/s -Deserialization.dsljson_reflection thrpt 545963.443 ops/s -Deserialization.fastjson thrpt 77620.237 ops/s -Deserialization.flexjson thrpt 38230.059 ops/s -Deserialization.genson thrpt 183636.746 ops/s -Deserialization.gson thrpt 54167.841 ops/s -Deserialization.jackson thrpt 90121.164 ops/s -Deserialization.jackson_afterburner thrpt 318545.987 ops/s -Deserialization.jackson_blackbird thrpt 308065.777 ops/s -Deserialization.jodd thrpt 101968.368 ops/s -Deserialization.jsoniter thrpt 188796.336 ops/s -Deserialization.logansquare thrpt 136684.644 ops/s -Deserialization.moshi thrpt 213481.051 ops/s +Deserialization.avajejsonb thrpt 266552.054 ops/s +Deserialization.avajejsonb_jackson thrpt 194037.620 ops/s +Deserialization.dsljson thrpt 716381.768 ops/s +Deserialization.dsljson_reflection thrpt 610371.502 ops/s +Deserialization.fastjson thrpt 147572.588 ops/s +Deserialization.flexjson thrpt 49394.643 ops/s +Deserialization.genson thrpt 129182.434 ops/s +Deserialization.gson thrpt 184845.139 ops/s +Deserialization.jackson thrpt 357907.233 ops/s +Deserialization.jackson_afterburner thrpt 252067.749 ops/s +Deserialization.jackson_blackbird thrpt 381649.614 ops/s +Deserialization.jodd thrpt 164723.490 ops/s +Deserialization.jsoniter thrpt 377677.919 ops/s +Deserialization.logansquare thrpt 52009.821 ops/s +Deserialization.moshi thrpt 129176.046 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt index 6a3427d..2c694ba 100644 --- a/output/clients-deser-1-10.txt +++ b/output/clients-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4108529805057 as seed for Random -8394.585 ops/s -Iteration 1: 18514.823 ops/s +# Warmup Iteration 1: Using SEED=4257926219405 as seed for Random +9827.037 ops/s +Iteration 1: 19052.382 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 18514.823 ops/s + 19052.382 ops/s # JMH version: 1.33 @@ -35,13 +35,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4121660065835 as seed for Random -4107.398 ops/s -Iteration 1: 12118.395 ops/s +# Warmup Iteration 1: Using SEED=4271031939389 as seed for Random +5665.708 ops/s +Iteration 1: 15049.866 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 12118.395 ops/s + 15049.866 ops/s # JMH version: 1.33 @@ -58,13 +58,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Run progress: 13.33% complete, ETA 00:02:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4134935345661 as seed for Random -38689.073 ops/s -Iteration 1: 68724.000 ops/s +# Warmup Iteration 1: Using SEED=4284219073740 as seed for Random +49294.406 ops/s +Iteration 1: 78790.504 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 68724.000 ops/s + 78790.504 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4148073723093 as seed for Random -37887.139 ops/s -Iteration 1: 51857.392 ops/s +# Warmup Iteration 1: Using SEED=4297271797428 as seed for Random +38578.814 ops/s +Iteration 1: 57242.114 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 51857.392 ops/s + 57242.114 ops/s # JMH version: 1.33 @@ -104,13 +104,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4161199639673 as seed for Random -3698.196 ops/s -Iteration 1: 7165.223 ops/s +# Warmup Iteration 1: Using SEED=4310367646062 as seed for Random +4490.201 ops/s +Iteration 1: 6490.330 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 7165.223 ops/s + 6490.330 ops/s # JMH version: 1.33 @@ -127,13 +127,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4174359008982 as seed for Random -1420.640 ops/s -Iteration 1: 2827.813 ops/s +# Warmup Iteration 1: Using SEED=4323480705608 as seed for Random +1440.492 ops/s +Iteration 1: 3056.945 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 2827.813 ops/s + 3056.945 ops/s # JMH version: 1.33 @@ -150,13 +150,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4187571964736 as seed for Random -3975.862 ops/s -Iteration 1: 12089.213 ops/s +# Warmup Iteration 1: Using SEED=4336621278534 as seed for Random +1687.998 ops/s +Iteration 1: 1744.965 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 12089.213 ops/s + 1744.965 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4200832845892 as seed for Random -1535.706 ops/s -Iteration 1: 1755.411 ops/s +# Warmup Iteration 1: Using SEED=4349667971048 as seed for Random +1620.570 ops/s +Iteration 1: 1752.723 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 1755.411 ops/s + 1752.723 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4214008959301 as seed for Random -4212.101 ops/s -Iteration 1: 8060.423 ops/s +# Warmup Iteration 1: Using SEED=4362844259793 as seed for Random +3476.870 ops/s +Iteration 1: 10326.219 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 8060.423 ops/s + 10326.219 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4227235910504 as seed for Random +# Warmup Iteration 1: Using SEED=4375947774978 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -3698.701 ops/s -Iteration 1: 6971.479 ops/s +3852.125 ops/s +Iteration 1: 8145.252 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 6971.479 ops/s + 8145.252 ops/s # JMH version: 1.33 @@ -247,13 +247,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4240491695170 as seed for Random -2965.729 ops/s -Iteration 1: 5652.846 ops/s +# Warmup Iteration 1: Using SEED=4389099232300 as seed for Random +4649.050 ops/s +Iteration 1: 9119.401 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 5652.846 ops/s + 9119.401 ops/s # JMH version: 1.33 @@ -270,13 +270,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4253646304867 as seed for Random -3026.859 ops/s -Iteration 1: 8136.480 ops/s +# Warmup Iteration 1: Using SEED=4402165521180 as seed for Random +5479.885 ops/s +Iteration 1: 11503.725 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 8136.480 ops/s + 11503.725 ops/s # JMH version: 1.33 @@ -293,18 +293,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4266833726067 as seed for Random +# Warmup Iteration 1: Using SEED=4415208053288 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -4850.101 ops/s -Iteration 1: 7813.794 ops/s +5392.129 ops/s +Iteration 1: 17124.830 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 7813.794 ops/s + 17124.830 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4279977265961 as seed for Random -2314.127 ops/s -Iteration 1: 3222.031 ops/s +# Warmup Iteration 1: Using SEED=4428305716311 as seed for Random +3954.384 ops/s +Iteration 1: 12139.233 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 3222.031 ops/s + 12139.233 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4293130873147 as seed for Random -4599.519 ops/s -Iteration 1: 9593.957 ops/s +# Warmup Iteration 1: Using SEED=4441434344176 as seed for Random +5348.790 ops/s +Iteration 1: 12885.657 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 9593.957 ops/s + 12885.657 ops/s -# Run complete. Total time: 00:03:17 +# Run complete. Total time: 00:03:16 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 18514.823 ops/s -Deserialization.avajejsonb_jackson thrpt 12118.395 ops/s -Deserialization.dsljson thrpt 68724.000 ops/s -Deserialization.dsljson_reflection thrpt 51857.392 ops/s -Deserialization.fastjson thrpt 7165.223 ops/s -Deserialization.flexjson thrpt 2827.813 ops/s -Deserialization.genson thrpt 12089.213 ops/s -Deserialization.gson thrpt 1755.411 ops/s -Deserialization.jackson thrpt 8060.423 ops/s -Deserialization.jackson_afterburner thrpt 6971.479 ops/s -Deserialization.jackson_blackbird thrpt 5652.846 ops/s -Deserialization.jodd thrpt 8136.480 ops/s -Deserialization.jsoniter thrpt 7813.794 ops/s -Deserialization.logansquare thrpt 3222.031 ops/s -Deserialization.moshi thrpt 9593.957 ops/s +Deserialization.avajejsonb thrpt 19052.382 ops/s +Deserialization.avajejsonb_jackson thrpt 15049.866 ops/s +Deserialization.dsljson thrpt 78790.504 ops/s +Deserialization.dsljson_reflection thrpt 57242.114 ops/s +Deserialization.fastjson thrpt 6490.330 ops/s +Deserialization.flexjson thrpt 3056.945 ops/s +Deserialization.genson thrpt 1744.965 ops/s +Deserialization.gson thrpt 1752.723 ops/s +Deserialization.jackson thrpt 10326.219 ops/s +Deserialization.jackson_afterburner thrpt 8145.252 ops/s +Deserialization.jackson_blackbird thrpt 9119.401 ops/s +Deserialization.jodd thrpt 11503.725 ops/s +Deserialization.jsoniter thrpt 17124.830 ops/s +Deserialization.logansquare thrpt 12139.233 ops/s +Deserialization.moshi thrpt 12885.657 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt index 3306dcd..275512c 100644 --- a/output/clients-deser-1-100.txt +++ b/output/clients-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4505964730809 as seed for Random -618.478 ops/s -Iteration 1: 1620.070 ops/s +# Warmup Iteration 1: Using SEED=4653436024976 as seed for Random +753.979 ops/s +Iteration 1: 1855.004 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 1620.070 ops/s + 1855.004 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:04 +# Run progress: 6.67% complete, ETA 00:03:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4519072082283 as seed for Random -470.358 ops/s -Iteration 1: 1442.502 ops/s +# Warmup Iteration 1: Using SEED=4666560530281 as seed for Random +383.945 ops/s +Iteration 1: 1198.416 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 1442.502 ops/s + 1198.416 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:51 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4532397939659 as seed for Random -2605.423 ops/s -Iteration 1: 6819.583 ops/s +# Warmup Iteration 1: Using SEED=4679755788851 as seed for Random +1319.338 ops/s +Iteration 1: 6458.276 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 6819.583 ops/s + 6458.276 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4545647208629 as seed for Random -3635.587 ops/s -Iteration 1: 5389.794 ops/s +# Warmup Iteration 1: Using SEED=4692936922335 as seed for Random +4237.295 ops/s +Iteration 1: 6170.873 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 5389.794 ops/s + 6170.873 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4558786710280 as seed for Random -433.140 ops/s -Iteration 1: 475.691 ops/s +# Warmup Iteration 1: Using SEED=4706058649411 as seed for Random +451.717 ops/s +Iteration 1: 1033.706 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 475.691 ops/s + 1033.706 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4572029153797 as seed for Random -133.303 ops/s -Iteration 1: 202.892 ops/s +# Warmup Iteration 1: Using SEED=4719265740968 as seed for Random +143.274 ops/s +Iteration 1: 287.712 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 202.892 ops/s + 287.712 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:01:59 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4585476629657 as seed for Random -512.576 ops/s -Iteration 1: 1263.176 ops/s +# Warmup Iteration 1: Using SEED=4732488014398 as seed for Random +169.909 ops/s +Iteration 1: 1242.564 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 1263.176 ops/s + 1242.564 ops/s # JMH version: 1.33 @@ -173,13 +173,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4598662407365 as seed for Random -372.372 ops/s -Iteration 1: 1070.384 ops/s +# Warmup Iteration 1: Using SEED=4745716736749 as seed for Random +502.940 ops/s +Iteration 1: 1400.848 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 1070.384 ops/s + 1400.848 ops/s # JMH version: 1.33 @@ -196,13 +196,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4611930590837 as seed for Random -273.294 ops/s -Iteration 1: 582.245 ops/s +# Warmup Iteration 1: Using SEED=4758887018174 as seed for Random +278.480 ops/s +Iteration 1: 746.885 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 582.245 ops/s + 746.885 ops/s # JMH version: 1.33 @@ -219,18 +219,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4625162734127 as seed for Random +# Warmup Iteration 1: Using SEED=4772069293029 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -306.222 ops/s -Iteration 1: 706.971 ops/s +329.886 ops/s +Iteration 1: 886.761 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 706.971 ops/s + 886.761 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4638394167103 as seed for Random -334.262 ops/s -Iteration 1: 900.700 ops/s +# Warmup Iteration 1: Using SEED=4785169711042 as seed for Random +429.633 ops/s +Iteration 1: 960.414 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 900.700 ops/s + 960.414 ops/s # JMH version: 1.33 @@ -270,13 +270,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4651600713019 as seed for Random -261.604 ops/s -Iteration 1: 690.167 ops/s +# Warmup Iteration 1: Using SEED=4798288348526 as seed for Random +430.261 ops/s +Iteration 1: 1047.312 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 690.167 ops/s + 1047.312 ops/s # JMH version: 1.33 @@ -293,18 +293,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4664809147350 as seed for Random +# Warmup Iteration 1: Using SEED=4811426161444 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -861.988 ops/s -Iteration 1: 1441.809 ops/s +520.472 ops/s +Iteration 1: 710.114 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 1441.809 ops/s + 710.114 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4677966281946 as seed for Random -285.372 ops/s -Iteration 1: 567.935 ops/s +# Warmup Iteration 1: Using SEED=4824549782988 as seed for Random +419.402 ops/s +Iteration 1: 788.272 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 567.935 ops/s + 788.272 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4691148808189 as seed for Random -369.084 ops/s -Iteration 1: 460.430 ops/s +# Warmup Iteration 1: Using SEED=4837723369293 as seed for Random +489.991 ops/s +Iteration 1: 1294.174 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 460.430 ops/s + 1294.174 ops/s -# Run complete. Total time: 00:03:18 +# Run complete. Total time: 00:03:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 1620.070 ops/s -Deserialization.avajejsonb_jackson thrpt 1442.502 ops/s -Deserialization.dsljson thrpt 6819.583 ops/s -Deserialization.dsljson_reflection thrpt 5389.794 ops/s -Deserialization.fastjson thrpt 475.691 ops/s -Deserialization.flexjson thrpt 202.892 ops/s -Deserialization.genson thrpt 1263.176 ops/s -Deserialization.gson thrpt 1070.384 ops/s -Deserialization.jackson thrpt 582.245 ops/s -Deserialization.jackson_afterburner thrpt 706.971 ops/s -Deserialization.jackson_blackbird thrpt 900.700 ops/s -Deserialization.jodd thrpt 690.167 ops/s -Deserialization.jsoniter thrpt 1441.809 ops/s -Deserialization.logansquare thrpt 567.935 ops/s -Deserialization.moshi thrpt 460.430 ops/s +Deserialization.avajejsonb thrpt 1855.004 ops/s +Deserialization.avajejsonb_jackson thrpt 1198.416 ops/s +Deserialization.dsljson thrpt 6458.276 ops/s +Deserialization.dsljson_reflection thrpt 6170.873 ops/s +Deserialization.fastjson thrpt 1033.706 ops/s +Deserialization.flexjson thrpt 287.712 ops/s +Deserialization.genson thrpt 1242.564 ops/s +Deserialization.gson thrpt 1400.848 ops/s +Deserialization.jackson thrpt 746.885 ops/s +Deserialization.jackson_afterburner thrpt 886.761 ops/s +Deserialization.jackson_blackbird thrpt 960.414 ops/s +Deserialization.jodd thrpt 1047.312 ops/s +Deserialization.jsoniter thrpt 710.114 ops/s +Deserialization.logansquare thrpt 788.272 ops/s +Deserialization.moshi thrpt 1294.174 ops/s diff --git a/output/clients-deser-1-1000.txt b/output/clients-deser-1-1000.txt index c25575c..0934172 100644 --- a/output/clients-deser-1-1000.txt +++ b/output/clients-deser-1-1000.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4909034191211 as seed for Random -93.427 ops/s -Iteration 1: 147.157 ops/s +# Warmup Iteration 1: Using SEED=5054111580821 as seed for Random +101.472 ops/s +Iteration 1: 167.975 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 147.157 ops/s + 167.975 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:10 +# Run progress: 6.67% complete, ETA 00:03:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4922630842662 as seed for Random -44.190 ops/s -Iteration 1: 124.405 ops/s +# Warmup Iteration 1: Using SEED=5067731892486 as seed for Random +73.548 ops/s +Iteration 1: 150.164 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 124.405 ops/s + 150.164 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:58 +# Run progress: 13.33% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4936419554031 as seed for Random -356.914 ops/s -Iteration 1: 647.402 ops/s +# Warmup Iteration 1: Using SEED=5081304720402 as seed for Random +324.178 ops/s +Iteration 1: 688.228 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 647.402 ops/s + 688.228 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:43 +# Run progress: 20.00% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4949796448214 as seed for Random -280.821 ops/s -Iteration 1: 398.315 ops/s +# Warmup Iteration 1: Using SEED=5094631871865 as seed for Random +391.077 ops/s +Iteration 1: 534.156 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 398.315 ops/s + 534.156 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:29 +# Run progress: 26.67% complete, ETA 00:02:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4963210097037 as seed for Random -45.849 ops/s -Iteration 1: 82.307 ops/s +# Warmup Iteration 1: Using SEED=5107952174616 as seed for Random +41.325 ops/s +Iteration 1: 82.611 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 82.307 ops/s + 82.611 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:16 +# Run progress: 33.33% complete, ETA 00:02:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4977107884870 as seed for Random -13.269 ops/s -Iteration 1: 20.087 ops/s +# Warmup Iteration 1: Using SEED=5121889811142 as seed for Random +13.198 ops/s +Iteration 1: 27.843 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 20.087 ops/s + 27.843 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 40.00% complete, ETA 00:02:05 +# Run progress: 40.00% complete, ETA 00:02:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4992488100647 as seed for Random -51.683 ops/s -Iteration 1: 121.506 ops/s +# Warmup Iteration 1: Using SEED=5137026561714 as seed for Random +81.221 ops/s +Iteration 1: 140.110 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 121.506 ops/s + 140.110 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 46.67% complete, ETA 00:01:51 +# Run progress: 46.67% complete, ETA 00:01:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5006205318527 as seed for Random -50.080 ops/s -Iteration 1: 117.064 ops/s +# Warmup Iteration 1: Using SEED=5150582747990 as seed for Random +61.389 ops/s +Iteration 1: 134.380 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 117.064 ops/s + 134.380 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 53.33% complete, ETA 00:01:37 +# Run progress: 53.33% complete, ETA 00:01:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5019920744135 as seed for Random -38.804 ops/s -Iteration 1: 99.155 ops/s +# Warmup Iteration 1: Using SEED=5164079126137 as seed for Random +38.162 ops/s +Iteration 1: 113.430 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 99.155 ops/s + 113.430 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:23 +# Run progress: 60.00% complete, ETA 00:01:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5033885000134 as seed for Random +# Warmup Iteration 1: Using SEED=5177666571153 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -38.287 ops/s -Iteration 1: 89.089 ops/s +47.739 ops/s +Iteration 1: 121.328 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 89.089 ops/s + 121.328 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:09 +# Run progress: 66.67% complete, ETA 00:01:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5047805386894 as seed for Random -35.071 ops/s -Iteration 1: 98.505 ops/s +# Warmup Iteration 1: Using SEED=5191310496050 as seed for Random +40.706 ops/s +Iteration 1: 105.858 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 98.505 ops/s + 105.858 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 73.33% complete, ETA 00:00:55 +# Run progress: 73.33% complete, ETA 00:00:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5061762859316 as seed for Random -35.144 ops/s -Iteration 1: 81.039 ops/s +# Warmup Iteration 1: Using SEED=5204818090363 as seed for Random +53.539 ops/s +Iteration 1: 91.208 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 81.039 ops/s + 91.208 ops/s # JMH version: 1.33 @@ -293,18 +293,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Run progress: 80.00% complete, ETA 00:00:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5075546420642 as seed for Random +# Warmup Iteration 1: Using SEED=5218527150797 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -43.522 ops/s -Iteration 1: 75.612 ops/s +60.958 ops/s +Iteration 1: 157.515 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 75.612 ops/s + 157.515 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:27 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5089538403361 as seed for Random -40.925 ops/s -Iteration 1: 117.096 ops/s +# Warmup Iteration 1: Using SEED=5231983961053 as seed for Random +37.382 ops/s +Iteration 1: 110.291 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 117.096 ops/s + 110.291 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5103350303922 as seed for Random -47.670 ops/s -Iteration 1: 112.354 ops/s +# Warmup Iteration 1: Using SEED=5245774126764 as seed for Random +43.653 ops/s +Iteration 1: 90.905 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 112.354 ops/s + 90.905 ops/s -# Run complete. Total time: 00:03:28 +# Run complete. Total time: 00:03:25 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 147.157 ops/s -Deserialization.avajejsonb_jackson thrpt 124.405 ops/s -Deserialization.dsljson thrpt 647.402 ops/s -Deserialization.dsljson_reflection thrpt 398.315 ops/s -Deserialization.fastjson thrpt 82.307 ops/s -Deserialization.flexjson thrpt 20.087 ops/s -Deserialization.genson thrpt 121.506 ops/s -Deserialization.gson thrpt 117.064 ops/s -Deserialization.jackson thrpt 99.155 ops/s -Deserialization.jackson_afterburner thrpt 89.089 ops/s -Deserialization.jackson_blackbird thrpt 98.505 ops/s -Deserialization.jodd thrpt 81.039 ops/s -Deserialization.jsoniter thrpt 75.612 ops/s -Deserialization.logansquare thrpt 117.096 ops/s -Deserialization.moshi thrpt 112.354 ops/s +Deserialization.avajejsonb thrpt 167.975 ops/s +Deserialization.avajejsonb_jackson thrpt 150.164 ops/s +Deserialization.dsljson thrpt 688.228 ops/s +Deserialization.dsljson_reflection thrpt 534.156 ops/s +Deserialization.fastjson thrpt 82.611 ops/s +Deserialization.flexjson thrpt 27.843 ops/s +Deserialization.genson thrpt 140.110 ops/s +Deserialization.gson thrpt 134.380 ops/s +Deserialization.jackson thrpt 113.430 ops/s +Deserialization.jackson_afterburner thrpt 121.328 ops/s +Deserialization.jackson_blackbird thrpt 105.858 ops/s +Deserialization.jodd thrpt 91.208 ops/s +Deserialization.jsoniter thrpt 157.515 ops/s +Deserialization.logansquare thrpt 110.291 ops/s +Deserialization.moshi thrpt 90.905 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt index 074abf4..4fb4d17 100644 --- a/output/clients-ser-1-1.txt +++ b/output/clients-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3513814505922 as seed for Random -307347.245 ops/s -Iteration 1: 443773.292 ops/s +# Warmup Iteration 1: Using SEED=3667045893942 as seed for Random +294137.861 ops/s +Iteration 1: 486049.902 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 443773.292 ops/s + 486049.902 ops/s # JMH version: 1.33 @@ -35,13 +35,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3527003366270 as seed for Random -210544.212 ops/s -Iteration 1: 325864.698 ops/s +# Warmup Iteration 1: Using SEED=3680131447739 as seed for Random +160572.267 ops/s +Iteration 1: 251644.448 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 325864.698 ops/s + 251644.448 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:52 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3540329263806 as seed for Random -665586.987 ops/s -Iteration 1: 772485.544 ops/s +# Warmup Iteration 1: Using SEED=3693253774127 as seed for Random +720819.710 ops/s +Iteration 1: 970737.993 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 772485.544 ops/s + 970737.993 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:39 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3553517812799 as seed for Random -455602.500 ops/s -Iteration 1: 601390.696 ops/s +# Warmup Iteration 1: Using SEED=3706315953466 as seed for Random +392526.734 ops/s +Iteration 1: 449932.781 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 601390.696 ops/s + 449932.781 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3566674435234 as seed for Random -139477.605 ops/s -Iteration 1: 253785.093 ops/s +# Warmup Iteration 1: Using SEED=3719419814263 as seed for Random +191578.017 ops/s +Iteration 1: 444243.208 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 253785.093 ops/s + 444243.208 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3579857316205 as seed for Random -1989.825 ops/s -Iteration 1: 1442.166 ops/s +# Warmup Iteration 1: Using SEED=3732569889527 as seed for Random +2256.680 ops/s +Iteration 1: 1477.600 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1442.166 ops/s + 1477.600 ops/s # JMH version: 1.33 @@ -150,13 +150,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3593049531280 as seed for Random -192287.237 ops/s -Iteration 1: 242552.991 ops/s +# Warmup Iteration 1: Using SEED=3745678717095 as seed for Random +202127.953 ops/s +Iteration 1: 252392.309 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 242552.991 ops/s + 252392.309 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3606210384531 as seed for Random -108157.691 ops/s -Iteration 1: 157715.586 ops/s +# Warmup Iteration 1: Using SEED=3758773532510 as seed for Random +151769.443 ops/s +Iteration 1: 202557.244 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 157715.586 ops/s + 202557.244 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3619329481364 as seed for Random -319677.430 ops/s -Iteration 1: 485495.483 ops/s +# Warmup Iteration 1: Using SEED=3771858594373 as seed for Random +291381.042 ops/s +Iteration 1: 518639.126 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 485495.483 ops/s + 518639.126 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3632533388448 as seed for Random +# Warmup Iteration 1: Using SEED=3784960603313 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -224763.049 ops/s -Iteration 1: 356561.107 ops/s +247482.974 ops/s +Iteration 1: 411504.700 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 356561.107 ops/s + 411504.700 ops/s # JMH version: 1.33 @@ -247,13 +247,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3645654167449 as seed for Random -338356.753 ops/s -Iteration 1: 492163.536 ops/s +# Warmup Iteration 1: Using SEED=3798003106962 as seed for Random +386602.421 ops/s +Iteration 1: 494148.122 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 492163.536 ops/s + 494148.122 ops/s # JMH version: 1.33 @@ -270,13 +270,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3658816241802 as seed for Random -61750.305 ops/s -Iteration 1: 131293.963 ops/s +# Warmup Iteration 1: Using SEED=3811042982785 as seed for Random +87372.768 ops/s +Iteration 1: 151398.909 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 131293.963 ops/s + 151398.909 ops/s # JMH version: 1.33 @@ -293,18 +293,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3671966494105 as seed for Random +# Warmup Iteration 1: Using SEED=3824069437140 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -314879.482 ops/s -Iteration 1: 456784.425 ops/s +517686.957 ops/s +Iteration 1: 651534.355 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 456784.425 ops/s + 651534.355 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3685126495487 as seed for Random -162621.230 ops/s -Iteration 1: 331235.520 ops/s +# Warmup Iteration 1: Using SEED=3837113994521 as seed for Random +208004.809 ops/s +Iteration 1: 531336.884 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 331235.520 ops/s + 531336.884 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3698216467140 as seed for Random -177657.633 ops/s -Iteration 1: 209234.253 ops/s +# Warmup Iteration 1: Using SEED=3850192903095 as seed for Random +137246.346 ops/s +Iteration 1: 223845.562 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 209234.253 ops/s + 223845.562 ops/s -# Run complete. Total time: 00:03:17 +# Run complete. Total time: 00:03:16 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -362,18 +362,18 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 443773.292 ops/s -Serialization.avajejsonb_jackson thrpt 325864.698 ops/s -Serialization.dsljson thrpt 772485.544 ops/s -Serialization.dsljson_reflection thrpt 601390.696 ops/s -Serialization.fastjson thrpt 253785.093 ops/s -Serialization.flexjson thrpt 1442.166 ops/s -Serialization.genson thrpt 242552.991 ops/s -Serialization.gson thrpt 157715.586 ops/s -Serialization.jackson thrpt 485495.483 ops/s -Serialization.jackson_afterburner thrpt 356561.107 ops/s -Serialization.jackson_blackbird thrpt 492163.536 ops/s -Serialization.jodd thrpt 131293.963 ops/s -Serialization.jsoniter thrpt 456784.425 ops/s -Serialization.logansquare thrpt 331235.520 ops/s -Serialization.moshi thrpt 209234.253 ops/s +Serialization.avajejsonb thrpt 486049.902 ops/s +Serialization.avajejsonb_jackson thrpt 251644.448 ops/s +Serialization.dsljson thrpt 970737.993 ops/s +Serialization.dsljson_reflection thrpt 449932.781 ops/s +Serialization.fastjson thrpt 444243.208 ops/s +Serialization.flexjson thrpt 1477.600 ops/s +Serialization.genson thrpt 252392.309 ops/s +Serialization.gson thrpt 202557.244 ops/s +Serialization.jackson thrpt 518639.126 ops/s +Serialization.jackson_afterburner thrpt 411504.700 ops/s +Serialization.jackson_blackbird thrpt 494148.122 ops/s +Serialization.jodd thrpt 151398.909 ops/s +Serialization.jsoniter thrpt 651534.355 ops/s +Serialization.logansquare thrpt 531336.884 ops/s +Serialization.moshi thrpt 223845.562 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt index 64bf979..6ee87ea 100644 --- a/output/clients-ser-1-10.txt +++ b/output/clients-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3910143623877 as seed for Random -27781.443 ops/s -Iteration 1: 34475.480 ops/s +# Warmup Iteration 1: Using SEED=4060994647899 as seed for Random +32787.516 ops/s +Iteration 1: 41949.959 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 34475.480 ops/s + 41949.959 ops/s # JMH version: 1.33 @@ -35,13 +35,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3923329752149 as seed for Random -24392.865 ops/s -Iteration 1: 33280.439 ops/s +# Warmup Iteration 1: Using SEED=4074111600875 as seed for Random +26697.712 ops/s +Iteration 1: 39621.558 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 33280.439 ops/s + 39621.558 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:51 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3936539201871 as seed for Random -81695.626 ops/s -Iteration 1: 99342.360 ops/s +# Warmup Iteration 1: Using SEED=4087202521555 as seed for Random +92574.739 ops/s +Iteration 1: 109765.015 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 99342.360 ops/s + 109765.015 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3949735498715 as seed for Random -70720.765 ops/s -Iteration 1: 78202.647 ops/s +# Warmup Iteration 1: Using SEED=4100230689784 as seed for Random +61923.884 ops/s +Iteration 1: 74461.600 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 78202.647 ops/s + 74461.600 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3962965882032 as seed for Random -6907.632 ops/s -Iteration 1: 26017.387 ops/s +# Warmup Iteration 1: Using SEED=4113312760157 as seed for Random +4580.057 ops/s +Iteration 1: 25252.360 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 26017.387 ops/s + 25252.360 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3976152033008 as seed for Random -564.514 ops/s -Iteration 1: 394.053 ops/s +# Warmup Iteration 1: Using SEED=4126413887467 as seed for Random +601.543 ops/s +Iteration 1: 422.591 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 394.053 ops/s + 422.591 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:58 +# Run progress: 40.00% complete, ETA 00:01:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3989373418138 as seed for Random -20058.461 ops/s -Iteration 1: 26982.590 ops/s +# Warmup Iteration 1: Using SEED=4139537839886 as seed for Random +11845.166 ops/s +Iteration 1: 32073.736 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 26982.590 ops/s + 32073.736 ops/s # JMH version: 1.33 @@ -171,15 +171,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 46.67% complete, ETA 00:01:45 +# Run progress: 46.67% complete, ETA 00:01:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4002599167686 as seed for Random -10834.448 ops/s -Iteration 1: 16215.155 ops/s +# Warmup Iteration 1: Using SEED=4152612910823 as seed for Random +10935.292 ops/s +Iteration 1: 18465.907 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 16215.155 ops/s + 18465.907 ops/s # JMH version: 1.33 @@ -194,15 +194,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 53.33% complete, ETA 00:01:32 +# Run progress: 53.33% complete, ETA 00:01:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4015752172096 as seed for Random -18577.698 ops/s -Iteration 1: 28796.919 ops/s +# Warmup Iteration 1: Using SEED=4165679831437 as seed for Random +22243.560 ops/s +Iteration 1: 34479.781 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 28796.919 ops/s + 34479.781 ops/s # JMH version: 1.33 @@ -217,20 +217,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 60.00% complete, ETA 00:01:19 +# Run progress: 60.00% complete, ETA 00:01:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4028914888719 as seed for Random +# Warmup Iteration 1: Using SEED=4178827767583 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -19105.818 ops/s -Iteration 1: 26311.853 ops/s +20767.926 ops/s +Iteration 1: 30878.619 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 26311.853 ops/s + 30878.619 ops/s # JMH version: 1.33 @@ -247,13 +247,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4042082424664 as seed for Random -12176.059 ops/s -Iteration 1: 23626.900 ops/s +# Warmup Iteration 1: Using SEED=4191911616875 as seed for Random +20971.413 ops/s +Iteration 1: 33480.945 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 23626.900 ops/s + 33480.945 ops/s # JMH version: 1.33 @@ -270,13 +270,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4055301520175 as seed for Random -3450.416 ops/s -Iteration 1: 4447.542 ops/s +# Warmup Iteration 1: Using SEED=4205103453238 as seed for Random +4858.970 ops/s +Iteration 1: 13465.931 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 4447.542 ops/s + 13465.931 ops/s # JMH version: 1.33 @@ -293,18 +293,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4068453990220 as seed for Random +# Warmup Iteration 1: Using SEED=4218154684619 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -30807.660 ops/s -Iteration 1: 38862.533 ops/s +18593.339 ops/s +Iteration 1: 38769.406 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 38862.533 ops/s + 38769.406 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4081583834027 as seed for Random -17694.717 ops/s -Iteration 1: 40364.641 ops/s +# Warmup Iteration 1: Using SEED=4231236067750 as seed for Random +23128.323 ops/s +Iteration 1: 43774.201 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 40364.641 ops/s + 43774.201 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4094729753371 as seed for Random -14014.897 ops/s -Iteration 1: 20946.427 ops/s +# Warmup Iteration 1: Using SEED=4244300844384 as seed for Random +12926.796 ops/s +Iteration 1: 24084.229 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 20946.427 ops/s + 24084.229 ops/s -# Run complete. Total time: 00:03:17 +# Run complete. Total time: 00:03:16 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -361,19 +361,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 34475.480 ops/s -Serialization.avajejsonb_jackson thrpt 33280.439 ops/s -Serialization.dsljson thrpt 99342.360 ops/s -Serialization.dsljson_reflection thrpt 78202.647 ops/s -Serialization.fastjson thrpt 26017.387 ops/s -Serialization.flexjson thrpt 394.053 ops/s -Serialization.genson thrpt 26982.590 ops/s -Serialization.gson thrpt 16215.155 ops/s -Serialization.jackson thrpt 28796.919 ops/s -Serialization.jackson_afterburner thrpt 26311.853 ops/s -Serialization.jackson_blackbird thrpt 23626.900 ops/s -Serialization.jodd thrpt 4447.542 ops/s -Serialization.jsoniter thrpt 38862.533 ops/s -Serialization.logansquare thrpt 40364.641 ops/s -Serialization.moshi thrpt 20946.427 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 41949.959 ops/s +Serialization.avajejsonb_jackson thrpt 39621.558 ops/s +Serialization.dsljson thrpt 109765.015 ops/s +Serialization.dsljson_reflection thrpt 74461.600 ops/s +Serialization.fastjson thrpt 25252.360 ops/s +Serialization.flexjson thrpt 422.591 ops/s +Serialization.genson thrpt 32073.736 ops/s +Serialization.gson thrpt 18465.907 ops/s +Serialization.jackson thrpt 34479.781 ops/s +Serialization.jackson_afterburner thrpt 30878.619 ops/s +Serialization.jackson_blackbird thrpt 33480.945 ops/s +Serialization.jodd thrpt 13465.931 ops/s +Serialization.jsoniter thrpt 38769.406 ops/s +Serialization.logansquare thrpt 43774.201 ops/s +Serialization.moshi thrpt 24084.229 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt index 78da34c..31ac360 100644 --- a/output/clients-ser-1-100.txt +++ b/output/clients-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4307032301248 as seed for Random -3140.290 ops/s -Iteration 1: 3685.130 ops/s +# Warmup Iteration 1: Using SEED=4455171800928 as seed for Random +3445.587 ops/s +Iteration 1: 4251.263 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 3685.130 ops/s + 4251.263 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:05 +# Run progress: 6.67% complete, ETA 00:03:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4320238889671 as seed for Random -2704.532 ops/s -Iteration 1: 3941.913 ops/s +# Warmup Iteration 1: Using SEED=4468249867237 as seed for Random +2407.222 ops/s +Iteration 1: 3887.783 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 3941.913 ops/s + 3887.783 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:52 +# Run progress: 13.33% complete, ETA 00:02:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4333470036614 as seed for Random -6832.257 ops/s -Iteration 1: 8624.038 ops/s +# Warmup Iteration 1: Using SEED=4481363996905 as seed for Random +7740.158 ops/s +Iteration 1: 11052.053 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 8624.038 ops/s + 11052.053 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:38 +# Run progress: 20.00% complete, ETA 00:02:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4346655502659 as seed for Random -6465.349 ops/s -Iteration 1: 7106.788 ops/s +# Warmup Iteration 1: Using SEED=4494568210653 as seed for Random +6536.210 ops/s +Iteration 1: 7740.268 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 7106.788 ops/s + 7740.268 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:25 +# Run progress: 26.67% complete, ETA 00:02:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4359813171497 as seed for Random -1262.981 ops/s -Iteration 1: 1960.856 ops/s +# Warmup Iteration 1: Using SEED=4507724018820 as seed for Random +1300.912 ops/s +Iteration 1: 2148.461 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 1960.856 ops/s + 2148.461 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:12 +# Run progress: 33.33% complete, ETA 00:02:11 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4373025371166 as seed for Random -111.708 ops/s -Iteration 1: 130.938 ops/s +# Warmup Iteration 1: Using SEED=4520934949872 as seed for Random +119.817 ops/s +Iteration 1: 138.173 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 130.938 ops/s + 138.173 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:01:59 +# Run progress: 40.00% complete, ETA 00:01:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4386512412639 as seed for Random -727.359 ops/s -Iteration 1: 2631.568 ops/s +# Warmup Iteration 1: Using SEED=4534440418068 as seed for Random +2311.120 ops/s +Iteration 1: 3036.285 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 2631.568 ops/s + 3036.285 ops/s # JMH version: 1.33 @@ -173,13 +173,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Run progress: 46.67% complete, ETA 00:01:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4399650236065 as seed for Random -1309.620 ops/s -Iteration 1: 1723.097 ops/s +# Warmup Iteration 1: Using SEED=4547613263582 as seed for Random +1154.348 ops/s +Iteration 1: 1791.861 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1723.097 ops/s + 1791.861 ops/s # JMH version: 1.33 @@ -196,13 +196,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Run progress: 53.33% complete, ETA 00:01:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4412945861290 as seed for Random -1808.050 ops/s -Iteration 1: 2788.929 ops/s +# Warmup Iteration 1: Using SEED=4560807644646 as seed for Random +2120.911 ops/s +Iteration 1: 3041.512 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 2788.929 ops/s + 3041.512 ops/s # JMH version: 1.33 @@ -219,18 +219,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Run progress: 60.00% complete, ETA 00:01:19 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4426215799036 as seed for Random +# Warmup Iteration 1: Using SEED=4573978157975 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -1889.138 ops/s -Iteration 1: 2823.417 ops/s +1828.282 ops/s +Iteration 1: 3157.173 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 2823.417 ops/s + 3157.173 ops/s # JMH version: 1.33 @@ -245,15 +245,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 66.67% complete, ETA 00:01:06 +# Run progress: 66.67% complete, ETA 00:01:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4439338444701 as seed for Random -1938.468 ops/s -Iteration 1: 2772.337 ops/s +# Warmup Iteration 1: Using SEED=4587067027148 as seed for Random +2021.153 ops/s +Iteration 1: 2893.007 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 2772.337 ops/s + 2893.007 ops/s # JMH version: 1.33 @@ -270,13 +270,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Run progress: 73.33% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4452526955327 as seed for Random -859.507 ops/s -Iteration 1: 1073.693 ops/s +# Warmup Iteration 1: Using SEED=4600330608521 as seed for Random +726.727 ops/s +Iteration 1: 1314.073 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 1073.693 ops/s + 1314.073 ops/s # JMH version: 1.33 @@ -293,18 +293,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Run progress: 80.00% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4465752270800 as seed for Random +# Warmup Iteration 1: Using SEED=4613511427293 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -2749.906 ops/s -Iteration 1: 3921.124 ops/s +3266.096 ops/s +Iteration 1: 4529.192 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 3921.124 ops/s + 4529.192 ops/s # JMH version: 1.33 @@ -321,13 +321,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4478922134813 as seed for Random -2035.498 ops/s -Iteration 1: 3885.565 ops/s +# Warmup Iteration 1: Using SEED=4626645367545 as seed for Random +2629.561 ops/s +Iteration 1: 4245.448 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 3885.565 ops/s + 4245.448 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4492111351941 as seed for Random -1664.138 ops/s -Iteration 1: 2165.214 ops/s +# Warmup Iteration 1: Using SEED=4639763140209 as seed for Random +1631.200 ops/s +Iteration 1: 2533.230 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2165.214 ops/s + 2533.230 ops/s -# Run complete. Total time: 00:03:18 +# Run complete. Total time: 00:03:17 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -361,19 +361,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 3685.130 ops/s -Serialization.avajejsonb_jackson thrpt 3941.913 ops/s -Serialization.dsljson thrpt 8624.038 ops/s -Serialization.dsljson_reflection thrpt 7106.788 ops/s -Serialization.fastjson thrpt 1960.856 ops/s -Serialization.flexjson thrpt 130.938 ops/s -Serialization.genson thrpt 2631.568 ops/s -Serialization.gson thrpt 1723.097 ops/s -Serialization.jackson thrpt 2788.929 ops/s -Serialization.jackson_afterburner thrpt 2823.417 ops/s -Serialization.jackson_blackbird thrpt 2772.337 ops/s -Serialization.jodd thrpt 1073.693 ops/s -Serialization.jsoniter thrpt 3921.124 ops/s -Serialization.logansquare thrpt 3885.565 ops/s -Serialization.moshi thrpt 2165.214 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 4251.263 ops/s +Serialization.avajejsonb_jackson thrpt 3887.783 ops/s +Serialization.dsljson thrpt 11052.053 ops/s +Serialization.dsljson_reflection thrpt 7740.268 ops/s +Serialization.fastjson thrpt 2148.461 ops/s +Serialization.flexjson thrpt 138.173 ops/s +Serialization.genson thrpt 3036.285 ops/s +Serialization.gson thrpt 1791.861 ops/s +Serialization.jackson thrpt 3041.512 ops/s +Serialization.jackson_afterburner thrpt 3157.173 ops/s +Serialization.jackson_blackbird thrpt 2893.007 ops/s +Serialization.jodd thrpt 1314.073 ops/s +Serialization.jsoniter thrpt 4529.192 ops/s +Serialization.logansquare thrpt 4245.448 ops/s +Serialization.moshi thrpt 2533.230 ops/s diff --git a/output/clients-ser-1-1000.txt b/output/clients-ser-1-1000.txt index 467271c..455e316 100644 --- a/output/clients-ser-1-1000.txt +++ b/output/clients-ser-1-1000.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:03:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4704993212402 as seed for Random -289.045 ops/s -Iteration 1: 362.800 ops/s +# Warmup Iteration 1: Using SEED=4851553510029 as seed for Random +344.412 ops/s +Iteration 1: 416.916 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 362.800 ops/s + 416.916 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 6.67% complete, ETA 00:03:08 +# Run progress: 6.67% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4718409345683 as seed for Random -210.650 ops/s -Iteration 1: 295.595 ops/s +# Warmup Iteration 1: Using SEED=4864868061463 as seed for Random +247.130 ops/s +Iteration 1: 326.550 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 295.595 ops/s + 326.550 ops/s # JMH version: 1.33 @@ -56,15 +56,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 13.33% complete, ETA 00:02:54 +# Run progress: 13.33% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4731796118409 as seed for Random -769.119 ops/s -Iteration 1: 923.070 ops/s +# Warmup Iteration 1: Using SEED=4878238274418 as seed for Random +910.098 ops/s +Iteration 1: 1046.192 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 923.070 ops/s + 1046.192 ops/s # JMH version: 1.33 @@ -79,15 +79,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 20.00% complete, ETA 00:02:40 +# Run progress: 20.00% complete, ETA 00:02:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4745107768441 as seed for Random -662.036 ops/s -Iteration 1: 722.166 ops/s +# Warmup Iteration 1: Using SEED=4891476612156 as seed for Random +682.333 ops/s +Iteration 1: 778.089 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 722.166 ops/s + 778.089 ops/s # JMH version: 1.33 @@ -102,15 +102,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 26.67% complete, ETA 00:02:27 +# Run progress: 26.67% complete, ETA 00:02:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4758423861587 as seed for Random -116.155 ops/s -Iteration 1: 160.640 ops/s +# Warmup Iteration 1: Using SEED=4904673703470 as seed for Random +119.738 ops/s +Iteration 1: 163.797 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 160.640 ops/s + 163.797 ops/s # JMH version: 1.33 @@ -125,15 +125,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 33.33% complete, ETA 00:02:14 +# Run progress: 33.33% complete, ETA 00:02:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4772067357472 as seed for Random -21.720 ops/s -Iteration 1: 39.234 ops/s +# Warmup Iteration 1: Using SEED=4918096580865 as seed for Random +19.257 ops/s +Iteration 1: 39.606 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 39.234 ops/s + 39.606 ops/s # JMH version: 1.33 @@ -148,15 +148,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 40.00% complete, ETA 00:02:02 +# Run progress: 40.00% complete, ETA 00:02:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4786476488448 as seed for Random -195.437 ops/s -Iteration 1: 267.410 ops/s +# Warmup Iteration 1: Using SEED=4932850908380 as seed for Random +248.007 ops/s +Iteration 1: 310.699 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 267.410 ops/s + 310.699 ops/s # JMH version: 1.33 @@ -173,13 +173,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Run progress: 46.67% complete, ETA 00:01:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4799955717964 as seed for Random -134.841 ops/s -Iteration 1: 179.002 ops/s +# Warmup Iteration 1: Using SEED=4946228414763 as seed for Random +141.627 ops/s +Iteration 1: 174.194 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 179.002 ops/s + 174.194 ops/s # JMH version: 1.33 @@ -196,13 +196,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Run progress: 53.33% complete, ETA 00:01:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4813481292775 as seed for Random -187.614 ops/s -Iteration 1: 267.336 ops/s +# Warmup Iteration 1: Using SEED=4959784624246 as seed for Random +138.932 ops/s +Iteration 1: 247.805 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 267.336 ops/s + 247.805 ops/s # JMH version: 1.33 @@ -219,18 +219,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Run progress: 60.00% complete, ETA 00:01:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4826989418863 as seed for Random +# Warmup Iteration 1: Using SEED=4973147085800 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -164.891 ops/s -Iteration 1: 244.505 ops/s +118.364 ops/s +Iteration 1: 249.029 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 244.505 ops/s + 249.029 ops/s # JMH version: 1.33 @@ -247,13 +247,13 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Run progress: 66.67% complete, ETA 00:01:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4840501895114 as seed for Random -166.635 ops/s -Iteration 1: 227.573 ops/s +# Warmup Iteration 1: Using SEED=4986534814390 as seed for Random +219.104 ops/s +Iteration 1: 295.806 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 227.573 ops/s + 295.806 ops/s # JMH version: 1.33 @@ -268,15 +268,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 73.33% complete, ETA 00:00:54 +# Run progress: 73.33% complete, ETA 00:00:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4854098365302 as seed for Random -74.711 ops/s -Iteration 1: 107.786 ops/s +# Warmup Iteration 1: Using SEED=4999870768887 as seed for Random +86.875 ops/s +Iteration 1: 107.985 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 107.786 ops/s + 107.985 ops/s # JMH version: 1.33 @@ -293,18 +293,18 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Run progress: 80.00% complete, ETA 00:00:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4867827389580 as seed for Random +# Warmup Iteration 1: Using SEED=5013475833412 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -204.323 ops/s -Iteration 1: 368.938 ops/s +392.675 ops/s +Iteration 1: 405.315 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 368.938 ops/s + 405.315 ops/s # JMH version: 1.33 @@ -319,15 +319,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 86.67% complete, ETA 00:00:27 +# Run progress: 86.67% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4881365299926 as seed for Random -231.481 ops/s -Iteration 1: 368.759 ops/s +# Warmup Iteration 1: Using SEED=5026758020644 as seed for Random +143.829 ops/s +Iteration 1: 363.614 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 368.759 ops/s + 363.614 ops/s # JMH version: 1.33 @@ -344,16 +344,16 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Run progress: 93.33% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4894784495691 as seed for Random -152.767 ops/s -Iteration 1: 202.999 ops/s +# Warmup Iteration 1: Using SEED=5040053930710 as seed for Random +147.942 ops/s +Iteration 1: 210.672 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 202.999 ops/s + 210.672 ops/s -# Run complete. Total time: 00:03:23 +# Run complete. Total time: 00:03:21 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -361,19 +361,19 @@ experiments, perform baseline and negative tests that provide experimental contr the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. Do not assume the numbers tell you what you want them to tell. -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 362.800 ops/s -Serialization.avajejsonb_jackson thrpt 295.595 ops/s -Serialization.dsljson thrpt 923.070 ops/s -Serialization.dsljson_reflection thrpt 722.166 ops/s -Serialization.fastjson thrpt 160.640 ops/s -Serialization.flexjson thrpt 39.234 ops/s -Serialization.genson thrpt 267.410 ops/s -Serialization.gson thrpt 179.002 ops/s -Serialization.jackson thrpt 267.336 ops/s -Serialization.jackson_afterburner thrpt 244.505 ops/s -Serialization.jackson_blackbird thrpt 227.573 ops/s -Serialization.jodd thrpt 107.786 ops/s -Serialization.jsoniter thrpt 368.938 ops/s -Serialization.logansquare thrpt 368.759 ops/s -Serialization.moshi thrpt 202.999 ops/s +Benchmark Mode Cnt Score Error Units +Serialization.avajejsonb thrpt 416.916 ops/s +Serialization.avajejsonb_jackson thrpt 326.550 ops/s +Serialization.dsljson thrpt 1046.192 ops/s +Serialization.dsljson_reflection thrpt 778.089 ops/s +Serialization.fastjson thrpt 163.797 ops/s +Serialization.flexjson thrpt 39.606 ops/s +Serialization.genson thrpt 310.699 ops/s +Serialization.gson thrpt 174.194 ops/s +Serialization.jackson thrpt 247.805 ops/s +Serialization.jackson_afterburner thrpt 249.029 ops/s +Serialization.jackson_blackbird thrpt 295.806 ops/s +Serialization.jodd thrpt 107.985 ops/s +Serialization.jsoniter thrpt 405.315 ops/s +Serialization.logansquare thrpt 363.614 ops/s +Serialization.moshi thrpt 210.672 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt index 872359b..636c09b 100644 --- a/output/users-deser-1-1.txt +++ b/output/users-deser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=520364421458 as seed for Random -422438.373 ops/s -Iteration 1: 606279.212 ops/s +# Warmup Iteration 1: Using SEED=697016214871 as seed for Random +482418.836 ops/s +Iteration 1: 645854.008 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 606279.212 ops/s + 645854.008 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:00 +# Run progress: 3.03% complete, ETA 00:07:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=533507105385 as seed for Random -168883.753 ops/s -Iteration 1: 366324.492 ops/s +# Warmup Iteration 1: Using SEED=710099590842 as seed for Random +260650.675 ops/s +Iteration 1: 455127.756 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 366324.492 ops/s + 455127.756 ops/s # JMH version: 1.33 @@ -56,17 +56,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:48 +# Run progress: 6.06% complete, ETA 00:06:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=546700622384 as seed for Random +# Warmup Iteration 1: Using SEED=723142822960 as seed for Random -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -79,14 +80,19 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 18 more -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -99,12 +105,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 18 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:33 +# Run progress: 9.09% complete, ETA 00:04:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=547706075742 as seed for Random -342336.047 ops/s -Iteration 1: 590275.874 ops/s +# Warmup Iteration 1: Using SEED=724100858790 as seed for Random +538158.081 ops/s +Iteration 1: 790408.434 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 590275.874 ops/s + 790408.434 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:53 +# Run progress: 12.12% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=560836343012 as seed for Random -467648.923 ops/s -Iteration 1: 535523.236 ops/s +# Warmup Iteration 1: Using SEED=737224855896 as seed for Random +509671.545 ops/s +Iteration 1: 601842.471 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 535523.236 ops/s + 601842.471 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:59 +# Run progress: 15.15% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=574004808487 as seed for Random -128460.201 ops/s -Iteration 1: 213666.726 ops/s +# Warmup Iteration 1: Using SEED=750272348586 as seed for Random +108282.496 ops/s +Iteration 1: 213356.467 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 213666.726 ops/s + 213356.467 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:00 +# Run progress: 18.18% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=587052840854 as seed for Random -9406.297 ops/s -Iteration 1: 13507.810 ops/s +# Warmup Iteration 1: Using SEED=763283722116 as seed for Random +26272.426 ops/s +Iteration 1: 59145.866 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 13507.810 ops/s + 59145.866 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:56 +# Run progress: 21.21% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=600152576927 as seed for Random -140777.033 ops/s -Iteration 1: 228764.874 ops/s +# Warmup Iteration 1: Using SEED=776288719855 as seed for Random +155437.328 ops/s +Iteration 1: 252877.033 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 228764.874 ops/s + 252877.033 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:50 +# Run progress: 24.24% complete, ETA 00:04:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=613304254218 as seed for Random -125899.779 ops/s -Iteration 1: 203811.986 ops/s +# Warmup Iteration 1: Using SEED=789395761018 as seed for Random +182318.732 ops/s +Iteration 1: 218988.115 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 203811.986 ops/s + 218988.115 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:42 +# Run progress: 27.27% complete, ETA 00:04:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=626455603712 as seed for Random -222717.539 ops/s -Iteration 1: 372814.370 ops/s +# Warmup Iteration 1: Using SEED=802527447092 as seed for Random +272806.786 ops/s +Iteration 1: 442619.208 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 372814.370 ops/s + 442619.208 ops/s # JMH version: 1.33 @@ -548,20 +548,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:34 +# Run progress: 30.30% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=639575429473 as seed for Random +# Warmup Iteration 1: Using SEED=815552553177 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -283272.765 ops/s -Iteration 1: 392770.953 ops/s +277938.132 ops/s +Iteration 1: 407753.034 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 392770.953 ops/s + 407753.034 ops/s # JMH version: 1.33 @@ -576,15 +576,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:24 +# Run progress: 33.33% complete, ETA 00:04:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=652658342870 as seed for Random -249779.152 ops/s -Iteration 1: 394580.438 ops/s +# Warmup Iteration 1: Using SEED=828574116266 as seed for Random +341396.365 ops/s +Iteration 1: 455083.070 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 394580.438 ops/s + 455083.070 ops/s # JMH version: 1.33 @@ -599,15 +599,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:14 +# Run progress: 36.36% complete, ETA 00:04:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=665753369006 as seed for Random -114018.236 ops/s -Iteration 1: 155646.827 ops/s +# Warmup Iteration 1: Using SEED=841574841319 as seed for Random +187396.553 ops/s +Iteration 1: 273174.145 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 155646.827 ops/s + 273174.145 ops/s # JMH version: 1.33 @@ -622,15 +622,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:03 +# Run progress: 39.39% complete, ETA 00:04:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=678800250932 as seed for Random -51611.098 ops/s -Iteration 1: 73895.548 ops/s +# Warmup Iteration 1: Using SEED=854587076617 as seed for Random +34078.632 ops/s +Iteration 1: 77121.927 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 73895.548 ops/s + 77121.927 ops/s # JMH version: 1.33 @@ -645,20 +645,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:52 +# Run progress: 42.42% complete, ETA 00:03:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=691894673417 as seed for Random +# Warmup Iteration 1: Using SEED=867613563149 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -249752.290 ops/s -Iteration 1: 448379.128 ops/s +197676.341 ops/s +Iteration 1: 539224.121 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 448379.128 ops/s + 539224.121 ops/s # JMH version: 1.33 @@ -673,20 +673,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:41 +# Run progress: 45.45% complete, ETA 00:03:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=704980659536 as seed for Random +# Warmup Iteration 1: Using SEED=880644826664 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -147749.690 ops/s -Iteration 1: 188885.650 ops/s +200107.182 ops/s +Iteration 1: 317540.778 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 188885.650 ops/s + 317540.778 ops/s # JMH version: 1.33 @@ -701,15 +701,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:30 +# Run progress: 48.48% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=718108215937 as seed for Random -115207.682 ops/s -Iteration 1: 190480.341 ops/s +# Warmup Iteration 1: Using SEED=893673134972 as seed for Random +77296.684 ops/s +Iteration 1: 201212.707 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 190480.341 ops/s + 201212.707 ops/s # JMH version: 1.33 @@ -724,15 +724,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:18 +# Run progress: 51.52% complete, ETA 00:03:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=731202075045 as seed for Random -146257.055 ops/s -Iteration 1: 250993.043 ops/s +# Warmup Iteration 1: Using SEED=906670205168 as seed for Random +172946.220 ops/s +Iteration 1: 272374.051 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 250993.043 ops/s + 272374.051 ops/s # JMH version: 1.33 @@ -747,15 +747,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:06 +# Run progress: 54.55% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=744296894900 as seed for Random -31349.072 ops/s -Iteration 1: 55975.623 ops/s +# Warmup Iteration 1: Using SEED=919661086068 as seed for Random +41441.235 ops/s +Iteration 1: 64151.170 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 55975.623 ops/s + 64151.170 ops/s # JMH version: 1.33 @@ -770,15 +770,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:54 +# Run progress: 57.58% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=757395715301 as seed for Random -194179.871 ops/s -Iteration 1: 249518.340 ops/s +# Warmup Iteration 1: Using SEED=932646731172 as seed for Random +182238.409 ops/s +Iteration 1: 273032.091 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 249518.340 ops/s + 273032.091 ops/s # JMH version: 1.33 @@ -793,15 +793,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:42 +# Run progress: 60.61% complete, ETA 00:02:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=770507673991 as seed for Random -116954.968 ops/s -Iteration 1: 197696.700 ops/s +# Warmup Iteration 1: Using SEED=945647231228 as seed for Random +168901.004 ops/s +Iteration 1: 242302.840 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 197696.700 ops/s + 242302.840 ops/s # JMH version: 1.33 @@ -816,15 +816,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:30 +# Run progress: 63.64% complete, ETA 00:02:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=783675965903 as seed for Random -232309.636 ops/s -Iteration 1: 362799.112 ops/s +# Warmup Iteration 1: Using SEED=958787309675 as seed for Random +314271.747 ops/s +Iteration 1: 445319.475 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 362799.112 ops/s + 445319.475 ops/s # JMH version: 1.33 @@ -839,15 +839,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:18 +# Run progress: 66.67% complete, ETA 00:02:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=796815497244 as seed for Random -19661.121 ops/s -Iteration 1: 28587.940 ops/s +# Warmup Iteration 1: Using SEED=971932369917 as seed for Random +20012.175 ops/s +Iteration 1: 31811.739 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 28587.940 ops/s + 31811.739 ops/s # JMH version: 1.33 @@ -864,13 +864,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=809860602050 as seed for Random -12435.433 ops/s -Iteration 1: 16429.863 ops/s +# Warmup Iteration 1: Using SEED=984861793982 as seed for Random +14426.904 ops/s +Iteration 1: 14260.967 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 16429.863 ops/s + 14260.967 ops/s # JMH version: 1.33 @@ -885,15 +885,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:53 +# Run progress: 72.73% complete, ETA 00:01:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=822985776468 as seed for Random -61738.792 ops/s -Iteration 1: 83743.083 ops/s +# Warmup Iteration 1: Using SEED=997913622099 as seed for Random +64784.982 ops/s +Iteration 1: 86237.956 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 83743.083 ops/s + 86237.956 ops/s # JMH version: 1.33 @@ -908,15 +908,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:41 +# Run progress: 75.76% complete, ETA 00:01:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=836029923393 as seed for Random -12583.166 ops/s -Iteration 1: 13323.077 ops/s +# Warmup Iteration 1: Using SEED=1010983766299 as seed for Random +61938.573 ops/s +Iteration 1: 193667.066 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 13323.077 ops/s + 193667.066 ops/s # JMH version: 1.33 @@ -933,13 +933,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=849180538008 as seed for Random -90856.119 ops/s -Iteration 1: 129493.433 ops/s +# Warmup Iteration 1: Using SEED=1024082631761 as seed for Random +108140.738 ops/s +Iteration 1: 150640.603 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 129493.433 ops/s + 150640.603 ops/s # JMH version: 1.33 @@ -956,13 +956,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=862267121025 as seed for Random -78659.559 ops/s -Iteration 1: 151170.028 ops/s +# Warmup Iteration 1: Using SEED=1037093283626 as seed for Random +110265.423 ops/s +Iteration 1: 238954.010 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 151170.028 ops/s + 238954.010 ops/s # JMH version: 1.33 @@ -979,13 +979,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=875360676145 as seed for Random -57899.122 ops/s -Iteration 1: 78417.559 ops/s +# Warmup Iteration 1: Using SEED=1050143348722 as seed for Random +70466.155 ops/s +Iteration 1: 80321.287 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 78417.559 ops/s + 80321.287 ops/s # JMH version: 1.33 @@ -1002,13 +1002,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=888468174019 as seed for Random -89958.118 ops/s -Iteration 1: 139125.249 ops/s +# Warmup Iteration 1: Using SEED=1063186342773 as seed for Random +111419.387 ops/s +Iteration 1: 157344.562 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 139125.249 ops/s + 157344.562 ops/s # JMH version: 1.33 @@ -1023,15 +1023,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson -# Run progress: 90.91% complete, ETA 00:00:38 +# Run progress: 90.91% complete, ETA 00:00:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=901581121531 as seed for Random -61656.059 ops/s -Iteration 1: 88095.089 ops/s +# Warmup Iteration 1: Using SEED=1076277823094 as seed for Random +77053.854 ops/s +Iteration 1: 100892.800 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 88095.089 ops/s + 100892.800 ops/s # JMH version: 1.33 @@ -1048,13 +1048,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=914677482204 as seed for Random -187956.835 ops/s -Iteration 1: 250764.025 ops/s +# Warmup Iteration 1: Using SEED=1089356653179 as seed for Random +174749.237 ops/s +Iteration 1: 296486.377 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 250764.025 ops/s + 296486.377 ops/s # JMH version: 1.33 @@ -1071,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=927907635713 as seed for Random -164493.545 ops/s -Iteration 1: 230106.471 ops/s +# Warmup Iteration 1: Using SEED=1102430885166 as seed for Random +128084.029 ops/s +Iteration 1: 246649.073 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 230106.471 ops/s + 246649.073 ops/s -# Run complete. Total time: 00:07:00 +# Run complete. Total time: 00:06:58 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1089,35 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 606279.212 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 366324.492 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 590275.874 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 535523.236 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 213666.726 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 13507.810 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 228764.874 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 203811.986 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 372814.370 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 392770.953 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 394580.438 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 155646.827 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 73895.548 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 448379.128 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 188885.650 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 190480.341 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 250993.043 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 55975.623 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 249518.340 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 197696.700 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 362799.112 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 28587.940 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 16429.863 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 83743.083 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 13323.077 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 129493.433 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 151170.028 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 78417.559 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 139125.249 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 88095.089 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 250764.025 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 230106.471 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 645854.008 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 455127.756 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 790408.434 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 601842.471 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 213356.467 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 59145.866 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 252877.033 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 218988.115 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 442619.208 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 407753.034 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 455083.070 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 273174.145 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 77121.927 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 539224.121 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 317540.778 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 201212.707 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 272374.051 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 64151.170 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 273032.091 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 242302.840 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 445319.475 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 31811.739 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 14260.967 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 86237.956 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 193667.066 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 150640.603 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 238954.010 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 80321.287 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 157344.562 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 100892.800 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 296486.377 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 246649.073 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt index a019c8b..c0e63a6 100644 --- a/output/users-deser-1-10.txt +++ b/output/users-deser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1363558543361 as seed for Random -44484.254 ops/s -Iteration 1: 59484.067 ops/s +# Warmup Iteration 1: Using SEED=1535608958225 as seed for Random +49514.719 ops/s +Iteration 1: 65352.788 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 59484.067 ops/s + 65352.788 ops/s # JMH version: 1.33 @@ -35,13 +35,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1376694045464 as seed for Random -29772.732 ops/s -Iteration 1: 44226.942 ops/s +# Warmup Iteration 1: Using SEED=1548706477158 as seed for Random +30421.748 ops/s +Iteration 1: 52496.588 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 44226.942 ops/s + 52496.588 ops/s # JMH version: 1.33 @@ -56,12 +56,12 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:47 +# Run progress: 6.06% complete, ETA 00:06:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1389788595847 as seed for Random +# Warmup Iteration 1: Using SEED=1561855218773 as seed for Random -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -79,13 +79,20 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -308,7 +315,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -326,12 +333,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -352,10 +353,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.IllegalStateException: More threads than expected - at org.openjdk.jmh.runner.InfraControlL2.announceWarmupReady(InfraControl.java:211) - at org.openjdk.jmh.runner.InfraControl.announceWarmupReady(InfraControl.java:40) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:76) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax + at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) + at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) + at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) + at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -386,13 +389,13 @@ java.lang.IllegalStateException: More threads than expected # Run progress: 9.09% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1390789733776 as seed for Random -52085.905 ops/s -Iteration 1: 71040.290 ops/s +# Warmup Iteration 1: Using SEED=1562839142044 as seed for Random +55450.209 ops/s +Iteration 1: 77233.255 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 71040.290 ops/s + 77233.255 ops/s # JMH version: 1.33 @@ -409,13 +412,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Run progress: 12.12% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1403935092047 as seed for Random -44038.403 ops/s -Iteration 1: 55664.659 ops/s +# Warmup Iteration 1: Using SEED=1575949517087 as seed for Random +54671.630 ops/s +Iteration 1: 63926.881 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 55664.659 ops/s + 63926.881 ops/s # JMH version: 1.33 @@ -432,13 +435,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Run progress: 15.15% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1416978711417 as seed for Random -23644.752 ops/s -Iteration 1: 35110.610 ops/s +# Warmup Iteration 1: Using SEED=1589042751051 as seed for Random +20781.243 ops/s +Iteration 1: 33273.861 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 35110.610 ops/s + 33273.861 ops/s # JMH version: 1.33 @@ -455,13 +458,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Run progress: 18.18% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1430110510281 as seed for Random -1636.774 ops/s -Iteration 1: 4013.089 ops/s +# Warmup Iteration 1: Using SEED=1602088186706 as seed for Random +1899.679 ops/s +Iteration 1: 6700.813 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 4013.089 ops/s + 6700.813 ops/s # JMH version: 1.33 @@ -476,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:56 +# Run progress: 21.21% complete, ETA 00:04:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1443232455287 as seed for Random -22331.941 ops/s -Iteration 1: 27319.588 ops/s +# Warmup Iteration 1: Using SEED=1615225146376 as seed for Random +20805.933 ops/s +Iteration 1: 34646.159 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 27319.588 ops/s + 34646.159 ops/s # JMH version: 1.33 @@ -499,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:50 +# Run progress: 24.24% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1456348127990 as seed for Random -21292.199 ops/s -Iteration 1: 29934.071 ops/s +# Warmup Iteration 1: Using SEED=1628287900238 as seed for Random +19642.965 ops/s +Iteration 1: 32875.335 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 29934.071 ops/s + 32875.335 ops/s # JMH version: 1.33 @@ -522,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:42 +# Run progress: 27.27% complete, ETA 00:04:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1469468853681 as seed for Random -22118.930 ops/s -Iteration 1: 40589.726 ops/s +# Warmup Iteration 1: Using SEED=1641332684933 as seed for Random +31317.427 ops/s +Iteration 1: 50500.855 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 40589.726 ops/s + 50500.855 ops/s # JMH version: 1.33 @@ -547,18 +550,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Run progress: 30.30% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1482594260287 as seed for Random +# Warmup Iteration 1: Using SEED=1654380221583 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -33155.090 ops/s -Iteration 1: 47634.903 ops/s +38395.232 ops/s +Iteration 1: 55568.354 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 47634.903 ops/s + 55568.354 ops/s # JMH version: 1.33 @@ -573,15 +576,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:24 +# Run progress: 33.33% complete, ETA 00:04:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1495730710627 as seed for Random -22067.275 ops/s -Iteration 1: 44653.353 ops/s +# Warmup Iteration 1: Using SEED=1667456922657 as seed for Random +46872.061 ops/s +Iteration 1: 56432.608 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 44653.353 ops/s + 56432.608 ops/s # JMH version: 1.33 @@ -596,15 +599,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:14 +# Run progress: 36.36% complete, ETA 00:04:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1508815533555 as seed for Random -16635.055 ops/s -Iteration 1: 25566.398 ops/s +# Warmup Iteration 1: Using SEED=1680526940973 as seed for Random +14908.722 ops/s +Iteration 1: 21654.106 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 25566.398 ops/s + 21654.106 ops/s # JMH version: 1.33 @@ -619,15 +622,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:03 +# Run progress: 39.39% complete, ETA 00:04:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1521902532486 as seed for Random -5585.855 ops/s -Iteration 1: 8989.503 ops/s +# Warmup Iteration 1: Using SEED=1693535367023 as seed for Random +6680.359 ops/s +Iteration 1: 9858.997 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 8989.503 ops/s + 9858.997 ops/s # JMH version: 1.33 @@ -644,18 +647,18 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1535048602736 as seed for Random +# Warmup Iteration 1: Using SEED=1706544457420 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -32794.723 ops/s -Iteration 1: 63946.492 ops/s +42103.970 ops/s +Iteration 1: 67887.968 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 63946.492 ops/s + 67887.968 ops/s # JMH version: 1.33 @@ -670,20 +673,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:41 +# Run progress: 45.45% complete, ETA 00:03:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1548108058536 as seed for Random +# Warmup Iteration 1: Using SEED=1719528196223 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -28685.396 ops/s -Iteration 1: 34592.114 ops/s +30483.569 ops/s +Iteration 1: 38958.045 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 34592.114 ops/s + 38958.045 ops/s # JMH version: 1.33 @@ -700,13 +703,13 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Run progress: 48.48% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1561148659345 as seed for Random -27590.161 ops/s -Iteration 1: 40459.167 ops/s +# Warmup Iteration 1: Using SEED=1732557755552 as seed for Random +31647.431 ops/s +Iteration 1: 44057.882 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 40459.167 ops/s + 44057.882 ops/s # JMH version: 1.33 @@ -721,15 +724,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:18 +# Run progress: 51.52% complete, ETA 00:03:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1574216875662 as seed for Random -20764.077 ops/s -Iteration 1: 28438.831 ops/s +# Warmup Iteration 1: Using SEED=1745582168310 as seed for Random +22815.671 ops/s +Iteration 1: 32388.327 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 28438.831 ops/s + 32388.327 ops/s # JMH version: 1.33 @@ -744,15 +747,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:06 +# Run progress: 54.55% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1587359476678 as seed for Random -3555.996 ops/s -Iteration 1: 6558.179 ops/s +# Warmup Iteration 1: Using SEED=1758605864467 as seed for Random +2536.181 ops/s +Iteration 1: 6902.959 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 6558.179 ops/s + 6902.959 ops/s # JMH version: 1.33 @@ -767,15 +770,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:54 +# Run progress: 57.58% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1600414123309 as seed for Random -19135.735 ops/s -Iteration 1: 36217.546 ops/s +# Warmup Iteration 1: Using SEED=1771692266493 as seed for Random +5473.895 ops/s +Iteration 1: 11201.254 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 36217.546 ops/s + 11201.254 ops/s # JMH version: 1.33 @@ -790,15 +793,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:42 +# Run progress: 60.61% complete, ETA 00:02:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1613613179325 as seed for Random -7489.377 ops/s -Iteration 1: 29214.857 ops/s +# Warmup Iteration 1: Using SEED=1784763369820 as seed for Random +5562.615 ops/s +Iteration 1: 26885.369 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 29214.857 ops/s + 26885.369 ops/s # JMH version: 1.33 @@ -813,15 +816,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:30 +# Run progress: 63.64% complete, ETA 00:02:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1626762783054 as seed for Random -25574.000 ops/s -Iteration 1: 43256.098 ops/s +# Warmup Iteration 1: Using SEED=1797882338499 as seed for Random +34987.526 ops/s +Iteration 1: 48212.024 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 43256.098 ops/s + 48212.024 ops/s # JMH version: 1.33 @@ -836,15 +839,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:18 +# Run progress: 66.67% complete, ETA 00:02:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1639917815950 as seed for Random -6293.584 ops/s -Iteration 1: 10864.928 ops/s +# Warmup Iteration 1: Using SEED=1810987024933 as seed for Random +2734.352 ops/s +Iteration 1: 2862.544 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 10864.928 ops/s + 2862.544 ops/s # JMH version: 1.33 @@ -861,13 +864,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1652999724050 as seed for Random -3262.107 ops/s -Iteration 1: 10686.195 ops/s +# Warmup Iteration 1: Using SEED=1824058197173 as seed for Random +4846.332 ops/s +Iteration 1: 11926.669 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 10686.195 ops/s + 11926.669 ops/s # JMH version: 1.33 @@ -884,13 +887,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1666084740450 as seed for Random -8520.430 ops/s -Iteration 1: 12471.447 ops/s +# Warmup Iteration 1: Using SEED=1837161923236 as seed for Random +9443.336 ops/s +Iteration 1: 13546.187 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 12471.447 ops/s + 13546.187 ops/s # JMH version: 1.33 @@ -905,15 +908,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:41 +# Run progress: 75.76% complete, ETA 00:01:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1679230811246 as seed for Random -13927.480 ops/s -Iteration 1: 23288.551 ops/s +# Warmup Iteration 1: Using SEED=1850231023004 as seed for Random +6144.263 ops/s +Iteration 1: 18352.923 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 23288.551 ops/s + 18352.923 ops/s # JMH version: 1.33 @@ -930,13 +933,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1692315633234 as seed for Random -10042.548 ops/s -Iteration 1: 14357.993 ops/s +# Warmup Iteration 1: Using SEED=1863305842691 as seed for Random +5303.156 ops/s +Iteration 1: 10154.870 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 14357.993 ops/s + 10154.870 ops/s # JMH version: 1.33 @@ -953,13 +956,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1705351069819 as seed for Random -11098.207 ops/s -Iteration 1: 25029.435 ops/s +# Warmup Iteration 1: Using SEED=1876332726701 as seed for Random +17346.686 ops/s +Iteration 1: 28225.222 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 25029.435 ops/s + 28225.222 ops/s # JMH version: 1.33 @@ -976,13 +979,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1718455340600 as seed for Random -15009.471 ops/s -Iteration 1: 21138.697 ops/s +# Warmup Iteration 1: Using SEED=1889426804693 as seed for Random +19374.936 ops/s +Iteration 1: 23293.410 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 21138.697 ops/s + 23293.410 ops/s # JMH version: 1.33 @@ -999,13 +1002,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1731480980747 as seed for Random -8710.037 ops/s -Iteration 1: 12054.592 ops/s +# Warmup Iteration 1: Using SEED=1902544869147 as seed for Random +9281.509 ops/s +Iteration 1: 13043.082 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 12054.592 ops/s + 13043.082 ops/s # JMH version: 1.33 @@ -1022,13 +1025,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1744603452102 as seed for Random -5844.677 ops/s -Iteration 1: 7972.378 ops/s +# Warmup Iteration 1: Using SEED=1915693860478 as seed for Random +6745.972 ops/s +Iteration 1: 11588.066 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 7972.378 ops/s + 11588.066 ops/s # JMH version: 1.33 @@ -1045,13 +1048,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1757709876249 as seed for Random -14600.129 ops/s -Iteration 1: 28641.902 ops/s +# Warmup Iteration 1: Using SEED=1928719053836 as seed for Random +20425.800 ops/s +Iteration 1: 32200.345 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 28641.902 ops/s + 32200.345 ops/s # JMH version: 1.33 @@ -1068,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1770877547710 as seed for Random -20054.953 ops/s -Iteration 1: 25180.946 ops/s +# Warmup Iteration 1: Using SEED=1941742798660 as seed for Random +12677.599 ops/s +Iteration 1: 25884.889 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 25180.946 ops/s + 25884.889 ops/s -# Run complete. Total time: 00:07:00 +# Run complete. Total time: 00:06:59 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1086,35 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 59484.067 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 44226.942 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 71040.290 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 55664.659 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 35110.610 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 4013.089 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 27319.588 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 29934.071 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 40589.726 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 47634.903 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 44653.353 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 25566.398 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 8989.503 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 63946.492 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 34592.114 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 40459.167 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 28438.831 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 6558.179 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 36217.546 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 29214.857 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 43256.098 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 10864.928 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 10686.195 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 12471.447 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 23288.551 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 14357.993 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 25029.435 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 21138.697 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 12054.592 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 7972.378 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 28641.902 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 25180.946 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 65352.788 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 52496.588 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 77233.255 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 63926.881 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 33273.861 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 6700.813 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 34646.159 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 32875.335 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 50500.855 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 55568.354 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 56432.608 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 21654.106 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 9858.997 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 67887.968 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 38958.045 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 44057.882 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 32388.327 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 6902.959 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 11201.254 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 26885.369 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 48212.024 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2862.544 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 11926.669 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 13546.187 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 18352.923 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 10154.870 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 28225.222 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 23293.410 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 13043.082 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 11588.066 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 32200.345 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 25884.889 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt index 01df790..7d5cecd 100644 --- a/output/users-deser-1-100.txt +++ b/output/users-deser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2208299546595 as seed for Random -3752.530 ops/s -Iteration 1: 5224.726 ops/s +# Warmup Iteration 1: Using SEED=2376262314008 as seed for Random +4507.206 ops/s +Iteration 1: 5721.850 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 5224.726 ops/s + 5721.850 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:03 +# Run progress: 3.03% complete, ETA 00:06:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2221567915819 as seed for Random -3261.115 ops/s -Iteration 1: 4605.589 ops/s +# Warmup Iteration 1: Using SEED=2389348330923 as seed for Random +3135.222 ops/s +Iteration 1: 4646.396 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 4605.589 ops/s + 4646.396 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:49 +# Run progress: 6.06% complete, ETA 00:06:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2234675806474 as seed for Random +# Warmup Iteration 1: Using SEED=2402548278840 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax @@ -137,7 +137,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -155,12 +155,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -200,13 +194,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -219,6 +212,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -282,7 +281,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:34 +# Run progress: 9.09% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2235752252851 as seed for Random -5845.895 ops/s -Iteration 1: 7250.744 ops/s +# Warmup Iteration 1: Using SEED=2403471298231 as seed for Random +6617.598 ops/s +Iteration 1: 8106.421 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 7250.744 ops/s + 8106.421 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:54 +# Run progress: 12.12% complete, ETA 00:04:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2248889081320 as seed for Random -3200.245 ops/s -Iteration 1: 3582.073 ops/s +# Warmup Iteration 1: Using SEED=2416537858854 as seed for Random +5847.796 ops/s +Iteration 1: 6939.056 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 3582.073 ops/s + 6939.056 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:00 +# Run progress: 15.15% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2262013435086 as seed for Random -1983.536 ops/s -Iteration 1: 3161.986 ops/s +# Warmup Iteration 1: Using SEED=2429638669974 as seed for Random +2251.038 ops/s +Iteration 1: 3546.827 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 3161.986 ops/s + 3546.827 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:00 +# Run progress: 18.18% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2275142897258 as seed for Random -273.239 ops/s -Iteration 1: 716.435 ops/s +# Warmup Iteration 1: Using SEED=2442763312840 as seed for Random +243.663 ops/s +Iteration 1: 750.017 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 716.435 ops/s + 750.017 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:04:57 +# Run progress: 21.21% complete, ETA 00:04:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2288292871536 as seed for Random -2168.268 ops/s -Iteration 1: 2929.072 ops/s +# Warmup Iteration 1: Using SEED=2455886567969 as seed for Random +2336.342 ops/s +Iteration 1: 3719.107 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 2929.072 ops/s + 3719.107 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:51 +# Run progress: 24.24% complete, ETA 00:04:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2301421888696 as seed for Random -2183.729 ops/s -Iteration 1: 2995.957 ops/s +# Warmup Iteration 1: Using SEED=2468926735311 as seed for Random +2275.639 ops/s +Iteration 1: 3478.249 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 2995.957 ops/s + 3478.249 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:43 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2314562733776 as seed for Random -3018.259 ops/s -Iteration 1: 4685.656 ops/s +# Warmup Iteration 1: Using SEED=2481993213250 as seed for Random +3374.811 ops/s +Iteration 1: 5258.576 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 4685.656 ops/s + 5258.576 ops/s # JMH version: 1.33 @@ -548,20 +548,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:34 +# Run progress: 30.30% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2327699346517 as seed for Random +# Warmup Iteration 1: Using SEED=2495065245009 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -3417.910 ops/s -Iteration 1: 4952.044 ops/s +2822.096 ops/s +Iteration 1: 5566.381 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 4952.044 ops/s + 5566.381 ops/s # JMH version: 1.33 @@ -576,15 +576,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:25 +# Run progress: 33.33% complete, ETA 00:04:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2340824568285 as seed for Random -2698.333 ops/s -Iteration 1: 4656.765 ops/s +# Warmup Iteration 1: Using SEED=2508109703359 as seed for Random +4557.930 ops/s +Iteration 1: 5464.613 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 4656.765 ops/s + 5464.613 ops/s # JMH version: 1.33 @@ -599,15 +599,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:14 +# Run progress: 36.36% complete, ETA 00:04:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2353999300515 as seed for Random -1372.673 ops/s -Iteration 1: 1733.212 ops/s +# Warmup Iteration 1: Using SEED=2521178064744 as seed for Random +2278.104 ops/s +Iteration 1: 3125.448 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 1733.212 ops/s + 3125.448 ops/s # JMH version: 1.33 @@ -622,15 +622,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:04 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2367180866071 as seed for Random -579.584 ops/s -Iteration 1: 873.761 ops/s +# Warmup Iteration 1: Using SEED=2534213279940 as seed for Random +531.011 ops/s +Iteration 1: 942.826 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 873.761 ops/s + 942.826 ops/s # JMH version: 1.33 @@ -645,20 +645,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:53 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2380354160085 as seed for Random +# Warmup Iteration 1: Using SEED=2547288847731 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -6306.701 ops/s -Iteration 1: 6766.257 ops/s +1479.392 ops/s +Iteration 1: 4125.987 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 6766.257 ops/s + 4125.987 ops/s # JMH version: 1.33 @@ -673,20 +673,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:42 +# Run progress: 45.45% complete, ETA 00:03:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2393494312252 as seed for Random +# Warmup Iteration 1: Using SEED=2560372302709 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -3205.939 ops/s -Iteration 1: 3710.031 ops/s +3413.998 ops/s +Iteration 1: 4085.147 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 3710.031 ops/s + 4085.147 ops/s # JMH version: 1.33 @@ -701,15 +701,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:30 +# Run progress: 48.48% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2406704426897 as seed for Random -3611.209 ops/s -Iteration 1: 4760.043 ops/s +# Warmup Iteration 1: Using SEED=2573458939349 as seed for Random +2558.356 ops/s +Iteration 1: 4863.848 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 4760.043 ops/s + 4863.848 ops/s # JMH version: 1.33 @@ -724,15 +724,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:19 +# Run progress: 51.52% complete, ETA 00:03:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2419914911341 as seed for Random -1061.926 ops/s -Iteration 1: 1727.910 ops/s +# Warmup Iteration 1: Using SEED=2586551531610 as seed for Random +2418.957 ops/s +Iteration 1: 3500.018 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 1727.910 ops/s + 3500.018 ops/s # JMH version: 1.33 @@ -747,15 +747,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:07 +# Run progress: 54.55% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2433050483532 as seed for Random -278.361 ops/s -Iteration 1: 631.657 ops/s +# Warmup Iteration 1: Using SEED=2599665740377 as seed for Random +361.229 ops/s +Iteration 1: 767.099 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 631.657 ops/s + 767.099 ops/s # JMH version: 1.33 @@ -770,15 +770,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:02:55 +# Run progress: 57.58% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2446233359903 as seed for Random -1745.254 ops/s -Iteration 1: 3565.391 ops/s +# Warmup Iteration 1: Using SEED=2612811654647 as seed for Random +910.213 ops/s +Iteration 1: 3254.453 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 3565.391 ops/s + 3254.453 ops/s # JMH version: 1.33 @@ -793,15 +793,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:43 +# Run progress: 60.61% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2459385176538 as seed for Random -919.807 ops/s -Iteration 1: 2355.455 ops/s +# Warmup Iteration 1: Using SEED=2625916990350 as seed for Random +595.506 ops/s +Iteration 1: 748.266 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 2355.455 ops/s + 748.266 ops/s # JMH version: 1.33 @@ -816,15 +816,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:31 +# Run progress: 63.64% complete, ETA 00:02:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2472647494731 as seed for Random -1951.368 ops/s -Iteration 1: 4744.820 ops/s +# Warmup Iteration 1: Using SEED=2639107689550 as seed for Random +2368.666 ops/s +Iteration 1: 4816.213 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 4744.820 ops/s + 4816.213 ops/s # JMH version: 1.33 @@ -841,13 +841,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Run progress: 66.67% complete, ETA 00:02:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2485788803403 as seed for Random -1064.794 ops/s -Iteration 1: 2114.930 ops/s +# Warmup Iteration 1: Using SEED=2652191754242 as seed for Random +1243.635 ops/s +Iteration 1: 2390.300 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 2114.930 ops/s + 2390.300 ops/s # JMH version: 1.33 @@ -862,15 +862,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:06 +# Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2498878958404 as seed for Random -411.465 ops/s -Iteration 1: 1073.007 ops/s +# Warmup Iteration 1: Using SEED=2665250276289 as seed for Random +297.419 ops/s +Iteration 1: 1019.843 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 1073.007 ops/s + 1019.843 ops/s # JMH version: 1.33 @@ -887,13 +887,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2512030177382 as seed for Random -747.507 ops/s -Iteration 1: 1253.318 ops/s +# Warmup Iteration 1: Using SEED=2678435443932 as seed for Random +726.203 ops/s +Iteration 1: 1444.933 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 1253.318 ops/s + 1444.933 ops/s # JMH version: 1.33 @@ -908,15 +908,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:41 +# Run progress: 75.76% complete, ETA 00:01:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2525234573495 as seed for Random -930.789 ops/s -Iteration 1: 2365.907 ops/s +# Warmup Iteration 1: Using SEED=2691572811066 as seed for Random +1509.546 ops/s +Iteration 1: 2249.448 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 2365.907 ops/s + 2249.448 ops/s # JMH version: 1.33 @@ -933,13 +933,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2538316585497 as seed for Random -1042.900 ops/s -Iteration 1: 1481.014 ops/s +# Warmup Iteration 1: Using SEED=2704652560190 as seed for Random +1252.485 ops/s +Iteration 1: 1668.042 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 1481.014 ops/s + 1668.042 ops/s # JMH version: 1.33 @@ -954,15 +954,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:16 +# Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2551418115203 as seed for Random -1274.987 ops/s -Iteration 1: 2221.414 ops/s +# Warmup Iteration 1: Using SEED=2717697613969 as seed for Random +937.657 ops/s +Iteration 1: 2883.018 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 2221.414 ops/s + 2883.018 ops/s # JMH version: 1.33 @@ -979,13 +979,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2564549558698 as seed for Random -1902.654 ops/s -Iteration 1: 2599.582 ops/s +# Warmup Iteration 1: Using SEED=2730783612519 as seed for Random +2024.627 ops/s +Iteration 1: 2772.297 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 2599.582 ops/s + 2772.297 ops/s # JMH version: 1.33 @@ -1002,13 +1002,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2577778222245 as seed for Random -872.809 ops/s -Iteration 1: 1240.572 ops/s +# Warmup Iteration 1: Using SEED=2743828019853 as seed for Random +580.004 ops/s +Iteration 1: 1064.635 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 1240.572 ops/s + 1064.635 ops/s # JMH version: 1.33 @@ -1025,13 +1025,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2590915013417 as seed for Random -484.785 ops/s -Iteration 1: 902.629 ops/s +# Warmup Iteration 1: Using SEED=2756962711410 as seed for Random +536.950 ops/s +Iteration 1: 910.533 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 902.629 ops/s + 910.533 ops/s # JMH version: 1.33 @@ -1048,13 +1048,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2604017919619 as seed for Random -2411.072 ops/s -Iteration 1: 3061.613 ops/s +# Warmup Iteration 1: Using SEED=2770050541536 as seed for Random +1915.475 ops/s +Iteration 1: 3191.655 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 3061.613 ops/s + 3191.655 ops/s # JMH version: 1.33 @@ -1071,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2617099316417 as seed for Random -1796.824 ops/s -Iteration 1: 2398.676 ops/s +# Warmup Iteration 1: Using SEED=2783156068117 as seed for Random +1488.492 ops/s +Iteration 1: 2520.526 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 2398.676 ops/s + 2520.526 ops/s -# Run complete. Total time: 00:07:01 +# Run complete. Total time: 00:07:00 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1089,35 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 5224.726 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4605.589 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 7250.744 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 3582.073 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 3161.986 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 716.435 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 2929.072 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 2995.957 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 4685.656 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 4952.044 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 4656.765 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 1733.212 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 873.761 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 6766.257 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 3710.031 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 4760.043 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 1727.910 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 631.657 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 3565.391 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 2355.455 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 4744.820 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2114.930 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 1073.007 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 1253.318 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2365.907 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 1481.014 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 2221.414 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 2599.582 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 1240.572 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 902.629 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 3061.613 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 2398.676 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 5721.850 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4646.396 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 8106.421 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 6939.056 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 3546.827 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 750.017 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 3719.107 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 3478.249 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 5258.576 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 5566.381 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 5464.613 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 3125.448 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 942.826 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 4125.987 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 4085.147 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 4863.848 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 3500.018 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 767.099 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 3254.453 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 748.266 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 4816.213 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 2390.300 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 1019.843 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 1444.933 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 2249.448 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 1668.042 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 2883.018 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 2772.297 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 1064.635 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 910.533 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 3191.655 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 2520.526 ops/s diff --git a/output/users-deser-1-1000.txt b/output/users-deser-1-1000.txt index 8265d66..0b4d092 100644 --- a/output/users-deser-1-1000.txt +++ b/output/users-deser-1-1000.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3071334904606 as seed for Random -422.591 ops/s -Iteration 1: 491.747 ops/s +# Warmup Iteration 1: Using SEED=3232913171674 as seed for Random +548.799 ops/s +Iteration 1: 636.684 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 491.747 ops/s + 636.684 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:07 +# Run progress: 3.03% complete, ETA 00:07:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3084686934503 as seed for Random -321.586 ops/s -Iteration 1: 439.439 ops/s +# Warmup Iteration 1: Using SEED=3246058871590 as seed for Random +222.700 ops/s +Iteration 1: 469.534 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 439.439 ops/s + 469.534 ops/s # JMH version: 1.33 @@ -56,18 +56,17 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon -# Run progress: 6.06% complete, ETA 00:06:55 +# Run progress: 6.06% complete, ETA 00:06:49 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3098119959055 as seed for Random +# Warmup Iteration 1: Using SEED=3259247156401 as seed for Random -java.lang.ExceptionInInitializerError +java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -80,12 +79,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 18 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -144,7 +137,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax +java.lang.ExceptionInInitializerError at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) @@ -162,6 +155,12 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.primitive.Chr.chars(Chr.java:70) + at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) + ... 17 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) @@ -225,7 +224,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -387,15 +387,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.impleme # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:39 +# Run progress: 9.09% complete, ETA 00:04:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3099218919951 as seed for Random -541.845 ops/s -Iteration 1: 703.844 ops/s +# Warmup Iteration 1: Using SEED=3260284844751 as seed for Random +553.466 ops/s +Iteration 1: 742.734 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 703.844 ops/s + 742.734 ops/s # JMH version: 1.33 @@ -410,15 +410,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:58 +# Run progress: 12.12% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3112495714900 as seed for Random -134.995 ops/s -Iteration 1: 542.924 ops/s +# Warmup Iteration 1: Using SEED=3273427268828 as seed for Random +597.241 ops/s +Iteration 1: 689.909 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 542.924 ops/s + 689.909 ops/s # JMH version: 1.33 @@ -433,15 +433,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection" # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:05 +# Run progress: 15.15% complete, ETA 00:05:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3125788446799 as seed for Random -146.389 ops/s -Iteration 1: 192.047 ops/s +# Warmup Iteration 1: Using SEED=3286582247144 as seed for Random +163.655 ops/s +Iteration 1: 205.276 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 192.047 ops/s + 205.276 ops/s # JMH version: 1.33 @@ -456,15 +456,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:06 +# Run progress: 18.18% complete, ETA 00:05:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3139337431787 as seed for Random -19.102 ops/s -Iteration 1: 57.230 ops/s +# Warmup Iteration 1: Using SEED=3299964249652 as seed for Random +23.085 ops/s +Iteration 1: 60.370 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 57.230 ops/s + 60.370 ops/s # JMH version: 1.33 @@ -479,15 +479,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson -# Run progress: 21.21% complete, ETA 00:05:05 +# Run progress: 21.21% complete, ETA 00:05:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3153528151658 as seed for Random -253.824 ops/s -Iteration 1: 293.342 ops/s +# Warmup Iteration 1: Using SEED=3313853631068 as seed for Random +277.527 ops/s +Iteration 1: 329.230 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 293.342 ops/s + 329.230 ops/s # JMH version: 1.33 @@ -502,15 +502,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson -# Run progress: 24.24% complete, ETA 00:04:58 +# Run progress: 24.24% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3166833202617 as seed for Random -211.709 ops/s -Iteration 1: 294.832 ops/s +# Warmup Iteration 1: Using SEED=3327173463119 as seed for Random +278.824 ops/s +Iteration 1: 339.702 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 294.832 ops/s + 339.702 ops/s # JMH version: 1.33 @@ -525,15 +525,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson -# Run progress: 27.27% complete, ETA 00:04:50 +# Run progress: 27.27% complete, ETA 00:04:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3180194688483 as seed for Random -267.540 ops/s -Iteration 1: 405.550 ops/s +# Warmup Iteration 1: Using SEED=3340450828126 as seed for Random +377.775 ops/s +Iteration 1: 496.545 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 405.550 ops/s + 496.545 ops/s # JMH version: 1.33 @@ -548,20 +548,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:41 +# Run progress: 30.30% complete, ETA 00:04:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3193489944457 as seed for Random +# Warmup Iteration 1: Using SEED=3353704663902 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -374.985 ops/s -Iteration 1: 491.518 ops/s +406.588 ops/s +Iteration 1: 545.812 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 491.518 ops/s + 545.812 ops/s # JMH version: 1.33 @@ -576,15 +576,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:30 +# Run progress: 33.33% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3206791265233 as seed for Random -371.232 ops/s -Iteration 1: 484.198 ops/s +# Warmup Iteration 1: Using SEED=3366838051157 as seed for Random +421.634 ops/s +Iteration 1: 535.458 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 484.198 ops/s + 535.458 ops/s # JMH version: 1.33 @@ -599,15 +599,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd -# Run progress: 36.36% complete, ETA 00:04:20 +# Run progress: 36.36% complete, ETA 00:04:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3220043142604 as seed for Random -140.117 ops/s -Iteration 1: 216.117 ops/s +# Warmup Iteration 1: Using SEED=3380101875634 as seed for Random +162.553 ops/s +Iteration 1: 211.217 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 216.117 ops/s + 211.217 ops/s # JMH version: 1.33 @@ -622,15 +622,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:09 +# Run progress: 39.39% complete, ETA 00:04:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3233378959781 as seed for Random -21.572 ops/s -Iteration 1: 39.215 ops/s +# Warmup Iteration 1: Using SEED=3393351270028 as seed for Random +21.761 ops/s +Iteration 1: 70.749 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 39.215 ops/s + 70.749 ops/s # JMH version: 1.33 @@ -645,20 +645,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter -# Run progress: 42.42% complete, ETA 00:04:00 +# Run progress: 42.42% complete, ETA 00:03:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3248732159840 as seed for Random +# Warmup Iteration 1: Using SEED=3408138308222 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -530.402 ops/s -Iteration 1: 626.597 ops/s +310.700 ops/s +Iteration 1: 667.311 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 626.597 ops/s + 667.311 ops/s # JMH version: 1.33 @@ -673,20 +673,20 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:48 +# Run progress: 45.45% complete, ETA 00:03:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3262014433809 as seed for Random +# Warmup Iteration 1: Using SEED=3421275211138 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -283.189 ops/s -Iteration 1: 354.272 ops/s +330.470 ops/s +Iteration 1: 413.348 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 354.272 ops/s + 413.348 ops/s # JMH version: 1.33 @@ -701,15 +701,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:36 +# Run progress: 48.48% complete, ETA 00:03:34 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3275397934891 as seed for Random -266.243 ops/s -Iteration 1: 419.203 ops/s +# Warmup Iteration 1: Using SEED=3434439706955 as seed for Random +322.186 ops/s +Iteration 1: 501.385 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 419.203 ops/s + 501.385 ops/s # JMH version: 1.33 @@ -724,15 +724,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi -# Run progress: 51.52% complete, ETA 00:03:24 +# Run progress: 51.52% complete, ETA 00:03:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3288759777946 as seed for Random -169.474 ops/s -Iteration 1: 228.795 ops/s +# Warmup Iteration 1: Using SEED=3447657540844 as seed for Random +226.988 ops/s +Iteration 1: 320.888 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 228.795 ops/s + 320.888 ops/s # JMH version: 1.33 @@ -747,15 +747,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson -# Run progress: 54.55% complete, ETA 00:03:12 +# Run progress: 54.55% complete, ETA 00:03:10 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3302207674429 as seed for Random -9.300 ops/s -Iteration 1: 33.932 ops/s +# Warmup Iteration 1: Using SEED=3460963419576 as seed for Random +11.597 ops/s +Iteration 1: 57.747 ops/s Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 33.932 ops/s + 57.747 ops/s # JMH version: 1.33 @@ -770,15 +770,15 @@ Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson -# Run progress: 57.58% complete, ETA 00:03:01 +# Run progress: 57.58% complete, ETA 00:02:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3317990860111 as seed for Random -178.415 ops/s -Iteration 1: 295.132 ops/s +# Warmup Iteration 1: Using SEED=3475610073221 as seed for Random +52.272 ops/s +Iteration 1: 281.293 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 295.132 ops/s + 281.293 ops/s # JMH version: 1.33 @@ -793,15 +793,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson -# Run progress: 60.61% complete, ETA 00:02:49 +# Run progress: 60.61% complete, ETA 00:02:46 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3331317330158 as seed for Random -210.807 ops/s -Iteration 1: 301.015 ops/s +# Warmup Iteration 1: Using SEED=3488968182298 as seed for Random +235.887 ops/s +Iteration 1: 344.899 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 301.015 ops/s + 344.899 ops/s # JMH version: 1.33 @@ -816,15 +816,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson -# Run progress: 63.64% complete, ETA 00:02:36 +# Run progress: 63.64% complete, ETA 00:02:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3344709536312 as seed for Random -178.951 ops/s -Iteration 1: 455.520 ops/s +# Warmup Iteration 1: Using SEED=3502274280448 as seed for Random +102.010 ops/s +Iteration 1: 459.819 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 455.520 ops/s + 459.819 ops/s # JMH version: 1.33 @@ -839,15 +839,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:23 +# Run progress: 66.67% complete, ETA 00:02:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3358069650563 as seed for Random -70.763 ops/s -Iteration 1: 115.950 ops/s +# Warmup Iteration 1: Using SEED=3515628278426 as seed for Random +90.234 ops/s +Iteration 1: 231.583 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 115.950 ops/s + 231.583 ops/s # JMH version: 1.33 @@ -862,15 +862,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:10 +# Run progress: 69.70% complete, ETA 00:02:08 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3371939868317 as seed for Random -29.788 ops/s -Iteration 1: 74.860 ops/s +# Warmup Iteration 1: Using SEED=3528997197706 as seed for Random +54.259 ops/s +Iteration 1: 96.243 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 74.860 ops/s + 96.243 ops/s # JMH version: 1.33 @@ -885,15 +885,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:57 +# Run progress: 72.73% complete, ETA 00:01:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3385945672584 as seed for Random -65.247 ops/s -Iteration 1: 120.525 ops/s +# Warmup Iteration 1: Using SEED=3542585198052 as seed for Random +81.487 ops/s +Iteration 1: 141.042 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 120.525 ops/s + 141.042 ops/s # JMH version: 1.33 @@ -908,15 +908,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:45 +# Run progress: 75.76% complete, ETA 00:01:43 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3399523190025 as seed for Random -35.513 ops/s -Iteration 1: 140.526 ops/s +# Warmup Iteration 1: Using SEED=3555973781293 as seed for Random +110.805 ops/s +Iteration 1: 218.314 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 140.526 ops/s + 218.314 ops/s # JMH version: 1.33 @@ -931,15 +931,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson -# Run progress: 78.79% complete, ETA 00:01:32 +# Run progress: 78.79% complete, ETA 00:01:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3413417415155 as seed for Random -43.398 ops/s -Iteration 1: 45.052 ops/s +# Warmup Iteration 1: Using SEED=3569286223622 as seed for Random +57.534 ops/s +Iteration 1: 94.762 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 45.052 ops/s + 94.762 ops/s # JMH version: 1.33 @@ -954,15 +954,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi -# Run progress: 81.82% complete, ETA 00:01:19 +# Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3427626223202 as seed for Random -133.433 ops/s -Iteration 1: 238.749 ops/s +# Warmup Iteration 1: Using SEED=3583377102071 as seed for Random +149.223 ops/s +Iteration 1: 278.262 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 238.749 ops/s + 278.262 ops/s # JMH version: 1.33 @@ -977,15 +977,15 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:06 +# Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3440992521738 as seed for Random -156.544 ops/s -Iteration 1: 239.843 ops/s +# Warmup Iteration 1: Using SEED=3596676615972 as seed for Random +168.834 ops/s +Iteration 1: 260.536 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 239.843 ops/s + 260.536 ops/s # JMH version: 1.33 @@ -1002,13 +1002,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3454347990813 as seed for Random -46.180 ops/s -Iteration 1: 100.378 ops/s +# Warmup Iteration 1: Using SEED=3609986967217 as seed for Random +95.633 ops/s +Iteration 1: 125.066 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 100.378 ops/s + 125.066 ops/s # JMH version: 1.33 @@ -1025,13 +1025,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3468235942895 as seed for Random -13.241 ops/s -Iteration 1: 19.816 ops/s +# Warmup Iteration 1: Using SEED=3623546771684 as seed for Random +15.066 ops/s +Iteration 1: 31.962 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 19.816 ops/s + 31.962 ops/s # JMH version: 1.33 @@ -1048,13 +1048,13 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": # Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3486248287234 as seed for Random -144.619 ops/s -Iteration 1: 247.038 ops/s +# Warmup Iteration 1: Using SEED=3639727621369 as seed for Random +191.681 ops/s +Iteration 1: 278.669 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 247.038 ops/s + 278.669 ops/s # JMH version: 1.33 @@ -1071,16 +1071,16 @@ Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3499690236934 as seed for Random -105.796 ops/s -Iteration 1: 199.005 ops/s +# Warmup Iteration 1: Using SEED=3653096266320 as seed for Random +142.490 ops/s +Iteration 1: 210.998 ops/s Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 199.005 ops/s + 210.998 ops/s -# Run complete. Total time: 00:07:21 +# Run complete. Total time: 00:07:13 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1089,35 +1089,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 491.747 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 439.439 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 703.844 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 542.924 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 192.047 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 57.230 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 293.342 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 294.832 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 405.550 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 491.518 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 484.198 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 216.117 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 39.215 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 626.597 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 354.272 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 419.203 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 228.795 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 33.932 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 295.132 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 301.015 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 455.520 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 115.950 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 74.860 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 120.525 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 140.526 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 45.052 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 238.749 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 239.843 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 100.378 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 19.816 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 247.038 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 199.005 ops/s +c.g.f.j.databind.Deserialization.avajejsonb thrpt 636.684 ops/s +c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 469.534 ops/s +c.g.f.j.databind.Deserialization.dsljson thrpt 742.734 ops/s +c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 689.909 ops/s +c.g.f.j.databind.Deserialization.fastjson thrpt 205.276 ops/s +c.g.f.j.databind.Deserialization.flexjson thrpt 60.370 ops/s +c.g.f.j.databind.Deserialization.genson thrpt 329.230 ops/s +c.g.f.j.databind.Deserialization.gson thrpt 339.702 ops/s +c.g.f.j.databind.Deserialization.jackson thrpt 496.545 ops/s +c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 545.812 ops/s +c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 535.458 ops/s +c.g.f.j.databind.Deserialization.jodd thrpt 211.217 ops/s +c.g.f.j.databind.Deserialization.johnzon thrpt 70.749 ops/s +c.g.f.j.databind.Deserialization.jsoniter thrpt 667.311 ops/s +c.g.f.j.databind.Deserialization.jsonsmart thrpt 413.348 ops/s +c.g.f.j.databind.Deserialization.logansquare thrpt 501.385 ops/s +c.g.f.j.databind.Deserialization.moshi thrpt 320.888 ops/s +c.g.f.j.databind.Deserialization.yasson thrpt 57.747 ops/s +c.g.f.j.stream.Deserialization.genson thrpt 281.293 ops/s +c.g.f.j.stream.Deserialization.gson thrpt 344.899 ops/s +c.g.f.j.stream.Deserialization.jackson thrpt 459.819 ops/s +c.g.f.j.stream.Deserialization.javaxjson thrpt 231.583 ops/s +c.g.f.j.stream.Deserialization.jsonio thrpt 96.243 ops/s +c.g.f.j.stream.Deserialization.jsonsimple thrpt 141.042 ops/s +c.g.f.j.stream.Deserialization.minimaljson thrpt 218.314 ops/s +c.g.f.j.stream.Deserialization.mjson thrpt 94.762 ops/s +c.g.f.j.stream.Deserialization.moshi thrpt 278.262 ops/s +c.g.f.j.stream.Deserialization.nanojson thrpt 260.536 ops/s +c.g.f.j.stream.Deserialization.orgjson thrpt 125.066 ops/s +c.g.f.j.stream.Deserialization.purejson thrpt 31.962 ops/s +c.g.f.j.stream.Deserialization.tapestry thrpt 278.669 ops/s +c.g.f.j.stream.Deserialization.underscore_java thrpt 210.998 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt index d8f6250..f3c18d5 100644 --- a/output/users-ser-1-1.txt +++ b/output/users-ser-1-1.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=99224432001 as seed for Random -445058.326 ops/s -Iteration 1: 526416.642 ops/s +# Warmup Iteration 1: Using SEED=277470189257 as seed for Random +546071.559 ops/s +Iteration 1: 618540.880 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 526416.642 ops/s + 618540.880 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:00 +# Run progress: 3.03% complete, ETA 00:06:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=112330364120 as seed for Random -410389.346 ops/s -Iteration 1: 481292.587 ops/s +# Warmup Iteration 1: Using SEED=290470390894 as seed for Random +400120.059 ops/s +Iteration 1: 476041.588 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 481292.587 ops/s + 476041.588 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:46 +# Run progress: 6.06% complete, ETA 00:06:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=125367689901 as seed for Random +# Warmup Iteration 1: Using SEED=303512321759 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -81,7 +81,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -100,6 +101,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -127,7 +136,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -321,8 +331,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -341,14 +350,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -376,8 +377,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -406,15 +406,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:31 +# Run progress: 9.09% complete, ETA 00:04:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=126316591467 as seed for Random -593900.007 ops/s -Iteration 1: 651652.286 ops/s +# Warmup Iteration 1: Using SEED=304418211550 as seed for Random +660422.182 ops/s +Iteration 1: 731835.852 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 651652.286 ops/s + 731835.852 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:51 +# Run progress: 12.12% complete, ETA 00:04:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=139385346149 as seed for Random -544445.613 ops/s -Iteration 1: 579916.353 ops/s +# Warmup Iteration 1: Using SEED=317462102192 as seed for Random +628898.291 ops/s +Iteration 1: 682479.314 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 579916.353 ops/s + 682479.314 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:58 +# Run progress: 15.15% complete, ETA 00:04:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=152487032043 as seed for Random -255018.194 ops/s -Iteration 1: 429021.492 ops/s +# Warmup Iteration 1: Using SEED=330508619396 as seed for Random +328439.256 ops/s +Iteration 1: 721483.602 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 429021.492 ops/s + 721483.602 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:58 +# Run progress: 18.18% complete, ETA 00:04:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=165559319866 as seed for Random -2182.294 ops/s -Iteration 1: 1247.781 ops/s +# Warmup Iteration 1: Using SEED=343537605460 as seed for Random +1988.433 ops/s +Iteration 1: 1223.377 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1247.781 ops/s + 1223.377 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:55 +# Run progress: 21.21% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=178662734859 as seed for Random -243807.719 ops/s -Iteration 1: 278671.706 ops/s +# Warmup Iteration 1: Using SEED=356592046743 as seed for Random +248461.906 ops/s +Iteration 1: 299061.741 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 278671.706 ops/s + 299061.741 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:49 +# Run progress: 24.24% complete, ETA 00:04:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=191830778800 as seed for Random -146228.711 ops/s -Iteration 1: 193598.728 ops/s +# Warmup Iteration 1: Using SEED=369654319719 as seed for Random +180002.479 ops/s +Iteration 1: 211933.621 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 193598.728 ops/s + 211933.621 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:41 +# Run progress: 27.27% complete, ETA 00:04:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=204919948770 as seed for Random -386172.563 ops/s -Iteration 1: 456317.627 ops/s +# Warmup Iteration 1: Using SEED=382653256965 as seed for Random +417197.159 ops/s +Iteration 1: 502201.133 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 456317.627 ops/s + 502201.133 ops/s # JMH version: 1.33 @@ -567,20 +567,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:33 +# Run progress: 30.30% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=218053794322 as seed for Random +# Warmup Iteration 1: Using SEED=395734166383 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -390093.111 ops/s -Iteration 1: 502856.129 ops/s +471935.552 ops/s +Iteration 1: 563885.382 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 502856.129 ops/s + 563885.382 ops/s # JMH version: 1.33 @@ -595,15 +595,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:23 +# Run progress: 33.33% complete, ETA 00:04:22 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=231173054060 as seed for Random -396281.869 ops/s -Iteration 1: 436804.729 ops/s +# Warmup Iteration 1: Using SEED=408714750430 as seed for Random +383289.524 ops/s +Iteration 1: 537909.161 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 436804.729 ops/s + 537909.161 ops/s # JMH version: 1.33 @@ -618,15 +618,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:13 +# Run progress: 36.36% complete, ETA 00:04:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=244227755271 as seed for Random -102538.983 ops/s -Iteration 1: 137345.853 ops/s +# Warmup Iteration 1: Using SEED=421843508085 as seed for Random +98534.948 ops/s +Iteration 1: 144714.488 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 137345.853 ops/s + 144714.488 ops/s # JMH version: 1.33 @@ -641,15 +641,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:03 +# Run progress: 39.39% complete, ETA 00:04:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=257328858126 as seed for Random -151605.611 ops/s -Iteration 1: 192856.804 ops/s +# Warmup Iteration 1: Using SEED=434871182648 as seed for Random +165759.115 ops/s +Iteration 1: 210190.728 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 192856.804 ops/s + 210190.728 ops/s # JMH version: 1.33 @@ -664,20 +664,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:52 +# Run progress: 42.42% complete, ETA 00:03:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=270404379978 as seed for Random +# Warmup Iteration 1: Using SEED=447941058744 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -605484.025 ops/s -Iteration 1: 591523.144 ops/s +487369.259 ops/s +Iteration 1: 524670.994 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 591523.144 ops/s + 524670.994 ops/s # JMH version: 1.33 @@ -692,20 +692,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:41 +# Run progress: 45.45% complete, ETA 00:03:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=283501705569 as seed for Random +# Warmup Iteration 1: Using SEED=460989598181 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -241514.591 ops/s -Iteration 1: 275840.906 ops/s +177683.999 ops/s +Iteration 1: 214944.394 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 275840.906 ops/s + 214944.394 ops/s # JMH version: 1.33 @@ -720,15 +720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:29 +# Run progress: 48.48% complete, ETA 00:03:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=296585452430 as seed for Random -360468.101 ops/s -Iteration 1: 448960.609 ops/s +# Warmup Iteration 1: Using SEED=474041741357 as seed for Random +408414.226 ops/s +Iteration 1: 537809.803 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 448960.609 ops/s + 537809.803 ops/s # JMH version: 1.33 @@ -743,15 +743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:18 +# Run progress: 51.52% complete, ETA 00:03:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=309676811777 as seed for Random -215413.563 ops/s -Iteration 1: 237362.671 ops/s +# Warmup Iteration 1: Using SEED=487086746071 as seed for Random +200573.419 ops/s +Iteration 1: 280821.935 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 237362.671 ops/s + 280821.935 ops/s # JMH version: 1.33 @@ -766,15 +766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:06 +# Run progress: 54.55% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=322808137093 as seed for Random -92514.355 ops/s -Iteration 1: 164995.781 ops/s +# Warmup Iteration 1: Using SEED=500120420832 as seed for Random +64450.653 ops/s +Iteration 1: 157905.070 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 164995.781 ops/s + 157905.070 ops/s # JMH version: 1.33 @@ -789,15 +789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:54 +# Run progress: 57.58% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=335863213546 as seed for Random -207704.794 ops/s -Iteration 1: 254872.980 ops/s +# Warmup Iteration 1: Using SEED=513177474501 as seed for Random +228366.464 ops/s +Iteration 1: 282985.582 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 254872.980 ops/s + 282985.582 ops/s # JMH version: 1.33 @@ -812,15 +812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:42 +# Run progress: 60.61% complete, ETA 00:02:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=349038063383 as seed for Random -82283.841 ops/s -Iteration 1: 97303.282 ops/s +# Warmup Iteration 1: Using SEED=526248221665 as seed for Random +121977.995 ops/s +Iteration 1: 152833.872 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 97303.282 ops/s + 152833.872 ops/s # JMH version: 1.33 @@ -835,15 +835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:30 +# Run progress: 63.64% complete, ETA 00:02:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=362290013664 as seed for Random -319843.680 ops/s -Iteration 1: 454046.530 ops/s +# Warmup Iteration 1: Using SEED=539404771971 as seed for Random +385143.902 ops/s +Iteration 1: 523895.244 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 454046.530 ops/s + 523895.244 ops/s # JMH version: 1.33 @@ -858,15 +858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:18 +# Run progress: 66.67% complete, ETA 00:02:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=375423480516 as seed for Random -202385.028 ops/s -Iteration 1: 290249.194 ops/s +# Warmup Iteration 1: Using SEED=552441959350 as seed for Random +117797.715 ops/s +Iteration 1: 317530.675 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 290249.194 ops/s + 317530.675 ops/s # JMH version: 1.33 @@ -883,13 +883,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=388583707444 as seed for Random -46676.791 ops/s -Iteration 1: 96411.871 ops/s +# Warmup Iteration 1: Using SEED=565568270555 as seed for Random +56767.752 ops/s +Iteration 1: 98127.430 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 96411.871 ops/s + 98127.430 ops/s # JMH version: 1.33 @@ -904,15 +904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:53 +# Run progress: 72.73% complete, ETA 00:01:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=401669903401 as seed for Random -69189.453 ops/s -Iteration 1: 82319.371 ops/s +# Warmup Iteration 1: Using SEED=578602500599 as seed for Random +57611.061 ops/s +Iteration 1: 95302.409 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 82319.371 ops/s + 95302.409 ops/s # JMH version: 1.33 @@ -929,13 +929,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Run progress: 75.76% complete, ETA 00:01:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=414702389997 as seed for Random -113604.980 ops/s -Iteration 1: 246560.093 ops/s +# Warmup Iteration 1: Using SEED=591608886861 as seed for Random +162260.752 ops/s +Iteration 1: 220529.523 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 246560.093 ops/s + 220529.523 ops/s # JMH version: 1.33 @@ -952,13 +952,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=427806179413 as seed for Random -29194.198 ops/s -Iteration 1: 91875.463 ops/s +# Warmup Iteration 1: Using SEED=604820915948 as seed for Random +51634.119 ops/s +Iteration 1: 101007.836 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 91875.463 ops/s + 101007.836 ops/s # JMH version: 1.33 @@ -975,13 +975,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=440938712202 as seed for Random -196239.834 ops/s -Iteration 1: 222870.307 ops/s +# Warmup Iteration 1: Using SEED=617904937756 as seed for Random +236760.340 ops/s +Iteration 1: 275680.383 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 222870.307 ops/s + 275680.383 ops/s # JMH version: 1.33 @@ -998,13 +998,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=454131693786 as seed for Random -142997.601 ops/s -Iteration 1: 251734.825 ops/s +# Warmup Iteration 1: Using SEED=630933861505 as seed for Random +237873.144 ops/s +Iteration 1: 271194.549 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 251734.825 ops/s + 271194.549 ops/s # JMH version: 1.33 @@ -1021,13 +1021,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=467239759742 as seed for Random -64385.626 ops/s -Iteration 1: 117680.708 ops/s +# Warmup Iteration 1: Using SEED=644064375754 as seed for Random +83090.242 ops/s +Iteration 1: 120632.928 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 117680.708 ops/s + 120632.928 ops/s # JMH version: 1.33 @@ -1042,15 +1042,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:38 +# Run progress: 90.91% complete, ETA 00:00:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=480403387066 as seed for Random -66245.578 ops/s -Iteration 1: 90376.284 ops/s +# Warmup Iteration 1: Using SEED=657126280357 as seed for Random +62091.316 ops/s +Iteration 1: 96754.915 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 90376.284 ops/s + 96754.915 ops/s # JMH version: 1.33 @@ -1067,13 +1067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=493547589487 as seed for Random -35480.819 ops/s -Iteration 1: 77917.828 ops/s +# Warmup Iteration 1: Using SEED=670131816839 as seed for Random +20221.654 ops/s +Iteration 1: 86349.989 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 77917.828 ops/s + 86349.989 ops/s # JMH version: 1.33 @@ -1090,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=506593659596 as seed for Random -76039.701 ops/s -Iteration 1: 113015.953 ops/s +# Warmup Iteration 1: Using SEED=683271165633 as seed for Random +113249.028 ops/s +Iteration 1: 128809.922 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 113015.953 ops/s + 128809.922 ops/s -# Run complete. Total time: 00:07:00 +# Run complete. Total time: 00:06:58 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1108,35 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 526416.642 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 481292.587 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 651652.286 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 579916.353 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 429021.492 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 1247.781 ops/s -c.g.f.j.databind.Serialization.genson thrpt 278671.706 ops/s -c.g.f.j.databind.Serialization.gson thrpt 193598.728 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 456317.627 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 502856.129 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 436804.729 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 137345.853 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 192856.804 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 591523.144 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 275840.906 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 448960.609 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 237362.671 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 164995.781 ops/s -c.g.f.j.stream.Serialization.genson thrpt 254872.980 ops/s -c.g.f.j.stream.Serialization.gson thrpt 97303.282 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 454046.530 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 290249.194 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 96411.871 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 82319.371 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 246560.093 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 91875.463 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 222870.307 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 251734.825 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 117680.708 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 90376.284 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 77917.828 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 113015.953 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 618540.880 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 476041.588 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 731835.852 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 682479.314 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 721483.602 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 1223.377 ops/s +c.g.f.j.databind.Serialization.genson thrpt 299061.741 ops/s +c.g.f.j.databind.Serialization.gson thrpt 211933.621 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 502201.133 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 563885.382 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 537909.161 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 144714.488 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 210190.728 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 524670.994 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 214944.394 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 537809.803 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 280821.935 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 157905.070 ops/s +c.g.f.j.stream.Serialization.genson thrpt 282985.582 ops/s +c.g.f.j.stream.Serialization.gson thrpt 152833.872 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 523895.244 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 317530.675 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 98127.430 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 95302.409 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 220529.523 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 101007.836 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 275680.383 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 271194.549 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 120632.928 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 96754.915 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 86349.989 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 128809.922 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt index 522ab7b..5d46f58 100644 --- a/output/users-ser-1-10.txt +++ b/output/users-ser-1-10.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=941696452211 as seed for Random -55579.277 ops/s -Iteration 1: 66367.695 ops/s +# Warmup Iteration 1: Using SEED=1116158472654 as seed for Random +55417.681 ops/s +Iteration 1: 75129.107 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 66367.695 ops/s + 75129.107 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:00 +# Run progress: 3.03% complete, ETA 00:06:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=954789103851 as seed for Random -45538.301 ops/s -Iteration 1: 54249.911 ops/s +# Warmup Iteration 1: Using SEED=1129173149306 as seed for Random +51707.323 ops/s +Iteration 1: 61379.511 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 54249.911 ops/s + 61379.511 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:46 +# Run progress: 6.06% complete, ETA 00:06:45 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=967883455094 as seed for Random +# Warmup Iteration 1: Using SEED=1142301495799 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -87,8 +87,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -102,8 +101,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -122,14 +120,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -197,7 +187,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -351,7 +342,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -370,6 +362,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -406,15 +406,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:32 +# Run progress: 9.09% complete, ETA 00:04:31 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=968934855327 as seed for Random -66269.145 ops/s -Iteration 1: 82606.827 ops/s +# Warmup Iteration 1: Using SEED=1143242061684 as seed for Random +78470.344 ops/s +Iteration 1: 86124.288 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 82606.827 ops/s + 86124.288 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:52 +# Run progress: 12.12% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=982073364401 as seed for Random -55808.134 ops/s -Iteration 1: 60362.870 ops/s +# Warmup Iteration 1: Using SEED=1156243312817 as seed for Random +71861.214 ops/s +Iteration 1: 80525.535 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 60362.870 ops/s + 80525.535 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:04:59 +# Run progress: 15.15% complete, ETA 00:04:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=995192343152 as seed for Random -45135.127 ops/s -Iteration 1: 51576.812 ops/s +# Warmup Iteration 1: Using SEED=1169314041556 as seed for Random +39745.347 ops/s +Iteration 1: 52304.474 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 51576.812 ops/s + 52304.474 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:04:59 +# Run progress: 18.18% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1008281029066 as seed for Random -500.833 ops/s -Iteration 1: 341.886 ops/s +# Warmup Iteration 1: Using SEED=1182334114399 as seed for Random +463.760 ops/s +Iteration 1: 362.964 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 341.886 ops/s + 362.964 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:56 +# Run progress: 21.21% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1021591858676 as seed for Random -34831.222 ops/s -Iteration 1: 41502.378 ops/s +# Warmup Iteration 1: Using SEED=1195497972579 as seed for Random +28709.305 ops/s +Iteration 1: 43801.520 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 41502.378 ops/s + 43801.520 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:50 +# Run progress: 24.24% complete, ETA 00:04:48 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1034640936992 as seed for Random -15101.002 ops/s -Iteration 1: 18298.656 ops/s +# Warmup Iteration 1: Using SEED=1208518326313 as seed for Random +14408.593 ops/s +Iteration 1: 21765.986 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 18298.656 ops/s + 21765.986 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:42 +# Run progress: 27.27% complete, ETA 00:04:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1047834610446 as seed for Random -47983.210 ops/s -Iteration 1: 54832.619 ops/s +# Warmup Iteration 1: Using SEED=1221557053960 as seed for Random +57954.468 ops/s +Iteration 1: 64654.708 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 54832.619 ops/s + 64654.708 ops/s # JMH version: 1.33 @@ -567,20 +567,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:34 +# Run progress: 30.30% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1060935902494 as seed for Random +# Warmup Iteration 1: Using SEED=1234671945299 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -44008.827 ops/s -Iteration 1: 57298.673 ops/s +55467.811 ops/s +Iteration 1: 61551.179 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 57298.673 ops/s + 61551.179 ops/s # JMH version: 1.33 @@ -595,15 +595,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:24 +# Run progress: 33.33% complete, ETA 00:04:23 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1074001748534 as seed for Random -44910.067 ops/s -Iteration 1: 52596.559 ops/s +# Warmup Iteration 1: Using SEED=1247761772363 as seed for Random +62491.093 ops/s +Iteration 1: 69742.441 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 52596.559 ops/s + 69742.441 ops/s # JMH version: 1.33 @@ -618,15 +618,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:14 +# Run progress: 36.36% complete, ETA 00:04:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1087090865889 as seed for Random -7879.821 ops/s -Iteration 1: 11653.416 ops/s +# Warmup Iteration 1: Using SEED=1260809474328 as seed for Random +9776.580 ops/s +Iteration 1: 11515.231 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 11653.416 ops/s + 11515.231 ops/s # JMH version: 1.33 @@ -641,15 +641,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:03 +# Run progress: 39.39% complete, ETA 00:04:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1100257775612 as seed for Random -16839.401 ops/s -Iteration 1: 17808.646 ops/s +# Warmup Iteration 1: Using SEED=1273916728303 as seed for Random +20645.109 ops/s +Iteration 1: 26624.357 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 17808.646 ops/s + 26624.357 ops/s # JMH version: 1.33 @@ -664,20 +664,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:52 +# Run progress: 42.42% complete, ETA 00:03:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1113387396877 as seed for Random +# Warmup Iteration 1: Using SEED=1286942027283 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -41555.701 ops/s -Iteration 1: 59129.129 ops/s +54185.463 ops/s +Iteration 1: 65546.201 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 59129.129 ops/s + 65546.201 ops/s # JMH version: 1.33 @@ -692,20 +692,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:41 +# Run progress: 45.45% complete, ETA 00:03:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1126461009673 as seed for Random +# Warmup Iteration 1: Using SEED=1299989137399 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -17863.052 ops/s -Iteration 1: 19637.516 ops/s +21141.552 ops/s +Iteration 1: 23089.100 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 19637.516 ops/s + 23089.100 ops/s # JMH version: 1.33 @@ -720,15 +720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:30 +# Run progress: 48.48% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1139621319543 as seed for Random -34050.212 ops/s -Iteration 1: 58351.069 ops/s +# Warmup Iteration 1: Using SEED=1313036915001 as seed for Random +29669.001 ops/s +Iteration 1: 66017.067 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 58351.069 ops/s + 66017.067 ops/s # JMH version: 1.33 @@ -743,15 +743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:18 +# Run progress: 51.52% complete, ETA 00:03:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1152731853809 as seed for Random -20164.494 ops/s -Iteration 1: 27253.043 ops/s +# Warmup Iteration 1: Using SEED=1326069430757 as seed for Random +25374.334 ops/s +Iteration 1: 37339.189 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 27253.043 ops/s + 37339.189 ops/s # JMH version: 1.33 @@ -766,15 +766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:06 +# Run progress: 54.55% complete, ETA 00:03:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1165879622743 as seed for Random -9453.152 ops/s -Iteration 1: 20070.551 ops/s +# Warmup Iteration 1: Using SEED=1339070575405 as seed for Random +12883.388 ops/s +Iteration 1: 24796.630 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 20070.551 ops/s + 24796.630 ops/s # JMH version: 1.33 @@ -789,15 +789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:54 +# Run progress: 57.58% complete, ETA 00:02:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1179010824335 as seed for Random -27562.930 ops/s -Iteration 1: 38389.401 ops/s +# Warmup Iteration 1: Using SEED=1352123697385 as seed for Random +24826.948 ops/s +Iteration 1: 40505.145 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 38389.401 ops/s + 40505.145 ops/s # JMH version: 1.33 @@ -812,15 +812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:42 +# Run progress: 60.61% complete, ETA 00:02:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1192245506893 as seed for Random -9133.969 ops/s -Iteration 1: 14507.295 ops/s +# Warmup Iteration 1: Using SEED=1365252551967 as seed for Random +13054.673 ops/s +Iteration 1: 15098.541 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 14507.295 ops/s + 15098.541 ops/s # JMH version: 1.33 @@ -835,15 +835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:30 +# Run progress: 63.64% complete, ETA 00:02:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1205412571949 as seed for Random -40727.741 ops/s -Iteration 1: 56673.003 ops/s +# Warmup Iteration 1: Using SEED=1378334961894 as seed for Random +45074.431 ops/s +Iteration 1: 66059.450 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 56673.003 ops/s + 66059.450 ops/s # JMH version: 1.33 @@ -858,15 +858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:18 +# Run progress: 66.67% complete, ETA 00:02:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1218542458151 as seed for Random -31684.897 ops/s -Iteration 1: 42668.887 ops/s +# Warmup Iteration 1: Using SEED=1391358491409 as seed for Random +25528.420 ops/s +Iteration 1: 48382.082 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 42668.887 ops/s + 48382.082 ops/s # JMH version: 1.33 @@ -881,15 +881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:06 +# Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1231678828274 as seed for Random -4639.855 ops/s -Iteration 1: 11461.108 ops/s +# Warmup Iteration 1: Using SEED=1404430159725 as seed for Random +3240.263 ops/s +Iteration 1: 10821.547 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 11461.108 ops/s + 10821.547 ops/s # JMH version: 1.33 @@ -906,13 +906,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1244818115580 as seed for Random -4873.488 ops/s -Iteration 1: 7554.578 ops/s +# Warmup Iteration 1: Using SEED=1417492424814 as seed for Random +6843.124 ops/s +Iteration 1: 8429.967 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 7554.578 ops/s + 8429.967 ops/s # JMH version: 1.33 @@ -927,15 +927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:41 +# Run progress: 75.76% complete, ETA 00:01:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1257865743015 as seed for Random -12826.283 ops/s -Iteration 1: 23669.805 ops/s +# Warmup Iteration 1: Using SEED=1430527601328 as seed for Random +10184.369 ops/s +Iteration 1: 22192.560 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 23669.805 ops/s + 22192.560 ops/s # JMH version: 1.33 @@ -952,13 +952,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1271004153812 as seed for Random -4728.002 ops/s -Iteration 1: 9209.180 ops/s +# Warmup Iteration 1: Using SEED=1443529537309 as seed for Random +3146.634 ops/s +Iteration 1: 9593.021 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 9209.180 ops/s + 9593.021 ops/s # JMH version: 1.33 @@ -973,15 +973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:16 +# Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1284128850841 as seed for Random -15670.639 ops/s -Iteration 1: 31115.667 ops/s +# Warmup Iteration 1: Using SEED=1456576637066 as seed for Random +17590.947 ops/s +Iteration 1: 28459.766 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 31115.667 ops/s + 28459.766 ops/s # JMH version: 1.33 @@ -998,13 +998,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1297252985998 as seed for Random -16699.605 ops/s -Iteration 1: 20395.229 ops/s +# Warmup Iteration 1: Using SEED=1469708460005 as seed for Random +17968.472 ops/s +Iteration 1: 24540.088 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 20395.229 ops/s + 24540.088 ops/s # JMH version: 1.33 @@ -1021,13 +1021,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1310436847412 as seed for Random -6805.389 ops/s -Iteration 1: 9975.246 ops/s +# Warmup Iteration 1: Using SEED=1482774515615 as seed for Random +4509.271 ops/s +Iteration 1: 10216.514 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 9975.246 ops/s + 10216.514 ops/s # JMH version: 1.33 @@ -1042,15 +1042,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson -# Run progress: 90.91% complete, ETA 00:00:38 +# Run progress: 90.91% complete, ETA 00:00:37 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1323606824123 as seed for Random -6735.275 ops/s -Iteration 1: 9110.050 ops/s +# Warmup Iteration 1: Using SEED=1495831123847 as seed for Random +5657.217 ops/s +Iteration 1: 8769.869 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 9110.050 ops/s + 8769.869 ops/s # JMH version: 1.33 @@ -1067,13 +1067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1336701939950 as seed for Random -3895.446 ops/s -Iteration 1: 7288.324 ops/s +# Warmup Iteration 1: Using SEED=1508901377713 as seed for Random +3133.520 ops/s +Iteration 1: 8054.504 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 7288.324 ops/s + 8054.504 ops/s # JMH version: 1.33 @@ -1090,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1349745075562 as seed for Random -7795.510 ops/s -Iteration 1: 9723.502 ops/s +# Warmup Iteration 1: Using SEED=1521951614042 as seed for Random +6789.976 ops/s +Iteration 1: 9938.903 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 9723.502 ops/s + 9938.903 ops/s -# Run complete. Total time: 00:07:01 +# Run complete. Total time: 00:06:58 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1108,35 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 66367.695 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 54249.911 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 82606.827 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 60362.870 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 51576.812 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 341.886 ops/s -c.g.f.j.databind.Serialization.genson thrpt 41502.378 ops/s -c.g.f.j.databind.Serialization.gson thrpt 18298.656 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 54832.619 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 57298.673 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 52596.559 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 11653.416 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 17808.646 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 59129.129 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 19637.516 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 58351.069 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 27253.043 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 20070.551 ops/s -c.g.f.j.stream.Serialization.genson thrpt 38389.401 ops/s -c.g.f.j.stream.Serialization.gson thrpt 14507.295 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 56673.003 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 42668.887 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 11461.108 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 7554.578 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 23669.805 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 9209.180 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 31115.667 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 20395.229 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 9975.246 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 9110.050 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 7288.324 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 9723.502 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 75129.107 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 61379.511 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 86124.288 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 80525.535 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 52304.474 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 362.964 ops/s +c.g.f.j.databind.Serialization.genson thrpt 43801.520 ops/s +c.g.f.j.databind.Serialization.gson thrpt 21765.986 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 64654.708 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 61551.179 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 69742.441 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 11515.231 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 26624.357 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 65546.201 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 23089.100 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 66017.067 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 37339.189 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 24796.630 ops/s +c.g.f.j.stream.Serialization.genson thrpt 40505.145 ops/s +c.g.f.j.stream.Serialization.gson thrpt 15098.541 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 66059.450 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 48382.082 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 10821.547 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 8429.967 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 22192.560 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 9593.021 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 28459.766 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 24540.088 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 10216.514 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 8769.869 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 8054.504 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 9938.903 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt index 58dad22..79465be 100644 --- a/output/users-ser-1-100.txt +++ b/output/users-ser-1-100.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1784753921278 as seed for Random -5837.089 ops/s -Iteration 1: 6995.896 ops/s +# Warmup Iteration 1: Using SEED=1955447226312 as seed for Random +5590.483 ops/s +Iteration 1: 7764.987 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 6995.896 ops/s + 7764.987 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:04 +# Run progress: 3.03% complete, ETA 00:07:00 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1797966298273 as seed for Random -4904.377 ops/s -Iteration 1: 5967.622 ops/s +# Warmup Iteration 1: Using SEED=1968555611669 as seed for Random +5529.652 ops/s +Iteration 1: 6706.371 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 5967.622 ops/s + 6706.371 ops/s # JMH version: 1.33 @@ -56,13 +56,12 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:50 +# Run progress: 6.06% complete, ETA 00:06:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1811200580959 as seed for Random +# Warmup Iteration 1: Using SEED=1981666512288 as seed for Random -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -81,14 +80,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -210,13 +201,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -229,6 +222,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 20 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -296,8 +297,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -406,15 +406,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:35 +# Run progress: 9.09% complete, ETA 00:04:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1812196904901 as seed for Random -7486.616 ops/s -Iteration 1: 8628.007 ops/s +# Warmup Iteration 1: Using SEED=1982605042858 as seed for Random +6022.321 ops/s +Iteration 1: 8547.919 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 8628.007 ops/s + 8547.919 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:54 +# Run progress: 12.12% complete, ETA 00:04:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1825395352347 as seed for Random -5968.581 ops/s -Iteration 1: 6564.218 ops/s +# Warmup Iteration 1: Using SEED=1995648151610 as seed for Random +7797.730 ops/s +Iteration 1: 8199.630 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 6564.218 ops/s + 8199.630 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:01 +# Run progress: 15.15% complete, ETA 00:04:58 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1838511073572 as seed for Random -2684.646 ops/s -Iteration 1: 3098.098 ops/s +# Warmup Iteration 1: Using SEED=2008731172854 as seed for Random +2820.589 ops/s +Iteration 1: 3353.708 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 3098.098 ops/s + 3353.708 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:01 +# Run progress: 18.18% complete, ETA 00:04:59 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1851692472058 as seed for Random -103.938 ops/s -Iteration 1: 133.900 ops/s +# Warmup Iteration 1: Using SEED=2021859939316 as seed for Random +102.942 ops/s +Iteration 1: 149.340 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 133.900 ops/s + 149.340 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:04:58 +# Run progress: 21.21% complete, ETA 00:04:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1865130722129 as seed for Random -3226.619 ops/s -Iteration 1: 4565.546 ops/s +# Warmup Iteration 1: Using SEED=2035187649816 as seed for Random +3607.581 ops/s +Iteration 1: 4579.940 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 4565.546 ops/s + 4579.940 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:52 +# Run progress: 24.24% complete, ETA 00:04:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1878342269722 as seed for Random -1226.045 ops/s -Iteration 1: 2468.799 ops/s +# Warmup Iteration 1: Using SEED=2048342099318 as seed for Random +1665.891 ops/s +Iteration 1: 2740.762 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 2468.799 ops/s + 2740.762 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:44 +# Run progress: 27.27% complete, ETA 00:04:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1891481085818 as seed for Random -4925.227 ops/s -Iteration 1: 6093.193 ops/s +# Warmup Iteration 1: Using SEED=2061399749888 as seed for Random +5286.523 ops/s +Iteration 1: 6769.994 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 6093.193 ops/s + 6769.994 ops/s # JMH version: 1.33 @@ -567,20 +567,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:35 +# Run progress: 30.30% complete, ETA 00:04:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1904571787034 as seed for Random +# Warmup Iteration 1: Using SEED=2074479021344 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -3822.968 ops/s -Iteration 1: 4367.450 ops/s +5574.902 ops/s +Iteration 1: 6576.650 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 4367.450 ops/s + 6576.650 ops/s # JMH version: 1.33 @@ -595,15 +595,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:26 +# Run progress: 33.33% complete, ETA 00:04:24 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1917720837962 as seed for Random -4493.609 ops/s -Iteration 1: 5306.116 ops/s +# Warmup Iteration 1: Using SEED=2087509415290 as seed for Random +5248.663 ops/s +Iteration 1: 5919.675 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 5306.116 ops/s + 5919.675 ops/s # JMH version: 1.33 @@ -618,15 +618,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:15 +# Run progress: 36.36% complete, ETA 00:04:14 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1930906264654 as seed for Random -1040.985 ops/s -Iteration 1: 1319.389 ops/s +# Warmup Iteration 1: Using SEED=2100537671341 as seed for Random +887.403 ops/s +Iteration 1: 1317.697 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 1319.389 ops/s + 1317.697 ops/s # JMH version: 1.33 @@ -641,15 +641,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:05 +# Run progress: 39.39% complete, ETA 00:04:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1944047637235 as seed for Random -1776.248 ops/s -Iteration 1: 2226.904 ops/s +# Warmup Iteration 1: Using SEED=2113614778773 as seed for Random +1560.752 ops/s +Iteration 1: 2430.929 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 2226.904 ops/s + 2430.929 ops/s # JMH version: 1.33 @@ -664,20 +664,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:54 +# Run progress: 42.42% complete, ETA 00:03:52 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1957202039264 as seed for Random +# Warmup Iteration 1: Using SEED=2126724524787 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -5707.064 ops/s -Iteration 1: 6133.477 ops/s +5957.098 ops/s +Iteration 1: 6669.048 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 6133.477 ops/s + 6669.048 ops/s # JMH version: 1.33 @@ -692,20 +692,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:42 +# Run progress: 45.45% complete, ETA 00:03:41 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1970323723737 as seed for Random +# Warmup Iteration 1: Using SEED=2139761249700 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -1912.874 ops/s -Iteration 1: 2030.756 ops/s +2068.904 ops/s +Iteration 1: 2252.749 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 2030.756 ops/s + 2252.749 ops/s # JMH version: 1.33 @@ -720,15 +720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:31 +# Run progress: 48.48% complete, ETA 00:03:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1983467705669 as seed for Random -4901.467 ops/s -Iteration 1: 6573.926 ops/s +# Warmup Iteration 1: Using SEED=2152818883102 as seed for Random +4804.581 ops/s +Iteration 1: 6197.620 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 6573.926 ops/s + 6197.620 ops/s # JMH version: 1.33 @@ -743,15 +743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:19 +# Run progress: 51.52% complete, ETA 00:03:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1996553737813 as seed for Random -1685.665 ops/s -Iteration 1: 2923.469 ops/s +# Warmup Iteration 1: Using SEED=2165885240262 as seed for Random +2633.874 ops/s +Iteration 1: 3253.131 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2923.469 ops/s + 3253.131 ops/s # JMH version: 1.33 @@ -766,15 +766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:07 +# Run progress: 54.55% complete, ETA 00:03:06 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2009702142683 as seed for Random -1052.734 ops/s -Iteration 1: 2094.316 ops/s +# Warmup Iteration 1: Using SEED=2178984744020 as seed for Random +1310.193 ops/s +Iteration 1: 2383.485 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 2094.316 ops/s + 2383.485 ops/s # JMH version: 1.33 @@ -789,15 +789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:55 +# Run progress: 57.58% complete, ETA 00:02:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2022852763680 as seed for Random -2723.845 ops/s -Iteration 1: 3585.569 ops/s +# Warmup Iteration 1: Using SEED=2192040439099 as seed for Random +2292.444 ops/s +Iteration 1: 4447.706 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 3585.569 ops/s + 4447.706 ops/s # JMH version: 1.33 @@ -812,15 +812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:43 +# Run progress: 60.61% complete, ETA 00:02:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2036037502435 as seed for Random -1162.839 ops/s -Iteration 1: 1335.655 ops/s +# Warmup Iteration 1: Using SEED=2205126937787 as seed for Random +1293.546 ops/s +Iteration 1: 1486.168 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 1335.655 ops/s + 1486.168 ops/s # JMH version: 1.33 @@ -835,15 +835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:31 +# Run progress: 63.64% complete, ETA 00:02:30 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2049275457255 as seed for Random -3893.227 ops/s -Iteration 1: 5740.447 ops/s +# Warmup Iteration 1: Using SEED=2218269407770 as seed for Random +5586.780 ops/s +Iteration 1: 6975.520 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 5740.447 ops/s + 6975.520 ops/s # JMH version: 1.33 @@ -858,15 +858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:18 +# Run progress: 66.67% complete, ETA 00:02:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2062417034230 as seed for Random -2931.647 ops/s -Iteration 1: 4169.756 ops/s +# Warmup Iteration 1: Using SEED=2231380700208 as seed for Random +3247.544 ops/s +Iteration 1: 4617.990 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 4169.756 ops/s + 4617.990 ops/s # JMH version: 1.33 @@ -881,15 +881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:06 +# Run progress: 69.70% complete, ETA 00:02:05 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2075728097890 as seed for Random -715.027 ops/s -Iteration 1: 1182.425 ops/s +# Warmup Iteration 1: Using SEED=2244412815352 as seed for Random +789.924 ops/s +Iteration 1: 1397.580 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 1182.425 ops/s + 1397.580 ops/s # JMH version: 1.33 @@ -904,15 +904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:54 +# Run progress: 72.73% complete, ETA 00:01:53 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2088909750592 as seed for Random -610.424 ops/s -Iteration 1: 708.166 ops/s +# Warmup Iteration 1: Using SEED=2257503827735 as seed for Random +567.709 ops/s +Iteration 1: 850.621 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 708.166 ops/s + 850.621 ops/s # JMH version: 1.33 @@ -927,15 +927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:41 +# Run progress: 75.76% complete, ETA 00:01:40 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2102120343517 as seed for Random -502.339 ops/s -Iteration 1: 2031.102 ops/s +# Warmup Iteration 1: Using SEED=2270553704528 as seed for Random +1108.309 ops/s +Iteration 1: 2200.676 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 2031.102 ops/s + 2200.676 ops/s # JMH version: 1.33 @@ -952,13 +952,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Run progress: 78.79% complete, ETA 00:01:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2115234028005 as seed for Random -545.005 ops/s -Iteration 1: 853.807 ops/s +# Warmup Iteration 1: Using SEED=2283668740047 as seed for Random +212.415 ops/s +Iteration 1: 270.578 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 853.807 ops/s + 270.578 ops/s # JMH version: 1.33 @@ -973,15 +973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:16 +# Run progress: 81.82% complete, ETA 00:01:15 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2128393130508 as seed for Random -1553.724 ops/s -Iteration 1: 2979.316 ops/s +# Warmup Iteration 1: Using SEED=2296870842255 as seed for Random +2264.962 ops/s +Iteration 1: 3431.043 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 2979.316 ops/s + 3431.043 ops/s # JMH version: 1.33 @@ -998,13 +998,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Run progress: 84.85% complete, ETA 00:01:03 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2141587732447 as seed for Random -1586.755 ops/s -Iteration 1: 2116.924 ops/s +# Warmup Iteration 1: Using SEED=2309932489897 as seed for Random +1620.585 ops/s +Iteration 1: 2368.346 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 2116.924 ops/s + 2368.346 ops/s # JMH version: 1.33 @@ -1019,15 +1019,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:51 +# Run progress: 87.88% complete, ETA 00:00:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2154753852639 as seed for Random -571.075 ops/s -Iteration 1: 886.993 ops/s +# Warmup Iteration 1: Using SEED=2323050032896 as seed for Random +784.297 ops/s +Iteration 1: 1009.980 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 886.993 ops/s + 1009.980 ops/s # JMH version: 1.33 @@ -1044,13 +1044,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2167941598394 as seed for Random -562.671 ops/s -Iteration 1: 692.885 ops/s +# Warmup Iteration 1: Using SEED=2336147103445 as seed for Random +558.962 ops/s +Iteration 1: 681.741 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 692.885 ops/s + 681.741 ops/s # JMH version: 1.33 @@ -1067,13 +1067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:25 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2181226897663 as seed for Random -252.631 ops/s -Iteration 1: 539.431 ops/s +# Warmup Iteration 1: Using SEED=2349209952020 as seed for Random +387.793 ops/s +Iteration 1: 609.070 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 539.431 ops/s + 609.070 ops/s # JMH version: 1.33 @@ -1090,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:12 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2194426351138 as seed for Random -740.473 ops/s -Iteration 1: 919.614 ops/s +# Warmup Iteration 1: Using SEED=2362488225499 as seed for Random +816.188 ops/s +Iteration 1: 1043.138 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 919.614 ops/s + 1043.138 ops/s -# Run complete. Total time: 00:07:02 +# Run complete. Total time: 00:07:00 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1108,35 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 6995.896 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 5967.622 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 8628.007 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 6564.218 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 3098.098 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 133.900 ops/s -c.g.f.j.databind.Serialization.genson thrpt 4565.546 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2468.799 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 6093.193 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 4367.450 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 5306.116 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 1319.389 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 2226.904 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 6133.477 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 2030.756 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 6573.926 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 2923.469 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2094.316 ops/s -c.g.f.j.stream.Serialization.genson thrpt 3585.569 ops/s -c.g.f.j.stream.Serialization.gson thrpt 1335.655 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 5740.447 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 4169.756 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 1182.425 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 708.166 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2031.102 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 853.807 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 2979.316 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 2116.924 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 886.993 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 692.885 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 539.431 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 919.614 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 7764.987 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 6706.371 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 8547.919 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 8199.630 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 3353.708 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 149.340 ops/s +c.g.f.j.databind.Serialization.genson thrpt 4579.940 ops/s +c.g.f.j.databind.Serialization.gson thrpt 2740.762 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 6769.994 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 6576.650 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 5919.675 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 1317.697 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 2430.929 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 6669.048 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 2252.749 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 6197.620 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 3253.131 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 2383.485 ops/s +c.g.f.j.stream.Serialization.genson thrpt 4447.706 ops/s +c.g.f.j.stream.Serialization.gson thrpt 1486.168 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 6975.520 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 4617.990 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 1397.580 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 850.621 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 2200.676 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 270.578 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 3431.043 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 2368.346 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 1009.980 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 681.741 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 609.070 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 1043.138 ops/s diff --git a/output/users-ser-1-1000.txt b/output/users-ser-1-1000.txt index 956a539..853babc 100644 --- a/output/users-ser-1-1000.txt +++ b/output/users-ser-1-1000.txt @@ -12,13 +12,13 @@ # Run progress: 0.00% complete, ETA 00:06:36 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2630918871638 as seed for Random -586.243 ops/s -Iteration 1: 685.364 ops/s +# Warmup Iteration 1: Using SEED=2796916734519 as seed for Random +647.248 ops/s +Iteration 1: 725.793 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 685.364 ops/s + 725.793 ops/s # JMH version: 1.33 @@ -33,15 +33,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson -# Run progress: 3.03% complete, ETA 00:07:05 +# Run progress: 3.03% complete, ETA 00:07:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2644184424972 as seed for Random -348.725 ops/s -Iteration 1: 457.675 ops/s +# Warmup Iteration 1: Using SEED=2810080023817 as seed for Random +560.765 ops/s +Iteration 1: 651.291 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 457.675 ops/s + 651.291 ops/s # JMH version: 1.33 @@ -56,9 +56,9 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon -# Run progress: 6.06% complete, ETA 00:06:51 +# Run progress: 6.06% complete, ETA 00:06:50 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2657471925689 as seed for Random +# Warmup Iteration 1: Using SEED=2823372493085 as seed for Random java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection @@ -67,8 +67,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -88,7 +87,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) + at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) @@ -322,8 +322,7 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) +java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -342,14 +341,6 @@ java.lang.ExceptionInInitializerError at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) @@ -371,7 +362,8 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection +java.lang.ExceptionInInitializerError + at org.boon.core.reflection.Reflection.(Reflection.java:122) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) @@ -390,6 +382,14 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) +Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') + at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) + at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) + at org.boon.Str.underBarCase(Str.java:538) + at org.boon.core.Sys.sysProp(Sys.java:341) + at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) + at org.boon.core.Sys.(Sys.java:182) + ... 19 more @@ -406,15 +406,15 @@ java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflect # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson -# Run progress: 9.09% complete, ETA 00:04:36 +# Run progress: 9.09% complete, ETA 00:04:35 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2658579289405 as seed for Random -710.079 ops/s -Iteration 1: 757.298 ops/s +# Warmup Iteration 1: Using SEED=2824394933629 as seed for Random +620.504 ops/s +Iteration 1: 829.417 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 757.298 ops/s + 829.417 ops/s # JMH version: 1.33 @@ -429,15 +429,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection -# Run progress: 12.12% complete, ETA 00:04:56 +# Run progress: 12.12% complete, ETA 00:04:54 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2671832636365 as seed for Random -680.504 ops/s -Iteration 1: 716.442 ops/s +# Warmup Iteration 1: Using SEED=2837529215196 as seed for Random +627.346 ops/s +Iteration 1: 682.035 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 716.442 ops/s + 682.035 ops/s # JMH version: 1.33 @@ -452,15 +452,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson -# Run progress: 15.15% complete, ETA 00:05:03 +# Run progress: 15.15% complete, ETA 00:05:01 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2685070902124 as seed for Random -185.068 ops/s -Iteration 1: 216.540 ops/s +# Warmup Iteration 1: Using SEED=2850721865274 as seed for Random +189.946 ops/s +Iteration 1: 222.252 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 216.540 ops/s + 222.252 ops/s # JMH version: 1.33 @@ -475,15 +475,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson -# Run progress: 18.18% complete, ETA 00:05:04 +# Run progress: 18.18% complete, ETA 00:05:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2698491034891 as seed for Random -23.105 ops/s -Iteration 1: 35.905 ops/s +# Warmup Iteration 1: Using SEED=2864048412595 as seed for Random +18.776 ops/s +Iteration 1: 40.673 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 35.905 ops/s + 40.673 ops/s # JMH version: 1.33 @@ -498,15 +498,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson -# Run progress: 21.21% complete, ETA 00:05:04 +# Run progress: 21.21% complete, ETA 00:05:02 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2712840007337 as seed for Random -390.442 ops/s -Iteration 1: 448.822 ops/s +# Warmup Iteration 1: Using SEED=2878325452858 as seed for Random +330.671 ops/s +Iteration 1: 486.659 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 448.822 ops/s + 486.659 ops/s # JMH version: 1.33 @@ -521,15 +521,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson -# Run progress: 24.24% complete, ETA 00:04:57 +# Run progress: 24.24% complete, ETA 00:04:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2726103072204 as seed for Random -167.399 ops/s -Iteration 1: 193.532 ops/s +# Warmup Iteration 1: Using SEED=2891556213015 as seed for Random +209.037 ops/s +Iteration 1: 228.216 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 193.532 ops/s + 228.216 ops/s # JMH version: 1.33 @@ -544,15 +544,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson -# Run progress: 27.27% complete, ETA 00:04:49 +# Run progress: 27.27% complete, ETA 00:04:47 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2739597306498 as seed for Random -485.875 ops/s -Iteration 1: 572.937 ops/s +# Warmup Iteration 1: Using SEED=2904826869248 as seed for Random +573.725 ops/s +Iteration 1: 672.722 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 572.937 ops/s + 672.722 ops/s # JMH version: 1.33 @@ -567,20 +567,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner -# Run progress: 30.30% complete, ETA 00:04:40 +# Run progress: 30.30% complete, ETA 00:04:38 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2752810535696 as seed for Random +# Warmup Iteration 1: Using SEED=2918039631716 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -353.072 ops/s -Iteration 1: 417.129 ops/s +500.148 ops/s +Iteration 1: 570.926 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 417.129 ops/s + 570.926 ops/s # JMH version: 1.33 @@ -595,15 +595,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird -# Run progress: 33.33% complete, ETA 00:04:30 +# Run progress: 33.33% complete, ETA 00:04:28 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2766154217442 as seed for Random -491.475 ops/s -Iteration 1: 587.267 ops/s +# Warmup Iteration 1: Using SEED=2931214050274 as seed for Random +570.553 ops/s +Iteration 1: 638.670 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 587.267 ops/s + 638.670 ops/s # JMH version: 1.33 @@ -618,15 +618,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd -# Run progress: 36.36% complete, ETA 00:04:19 +# Run progress: 36.36% complete, ETA 00:04:18 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2779380213095 as seed for Random -121.934 ops/s -Iteration 1: 134.091 ops/s +# Warmup Iteration 1: Using SEED=2944346226893 as seed for Random +80.752 ops/s +Iteration 1: 133.432 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 134.091 ops/s + 133.432 ops/s # JMH version: 1.33 @@ -641,15 +641,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon -# Run progress: 39.39% complete, ETA 00:04:09 +# Run progress: 39.39% complete, ETA 00:04:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2792931281803 as seed for Random -164.452 ops/s -Iteration 1: 209.004 ops/s +# Warmup Iteration 1: Using SEED=2957761506387 as seed for Random +211.833 ops/s +Iteration 1: 233.774 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 209.004 ops/s + 233.774 ops/s # JMH version: 1.33 @@ -664,20 +664,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter -# Run progress: 42.42% complete, ETA 00:03:58 +# Run progress: 42.42% complete, ETA 00:03:56 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2806483782967 as seed for Random +# Warmup Iteration 1: Using SEED=2971168800966 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -562.393 ops/s -Iteration 1: 625.946 ops/s +614.310 ops/s +Iteration 1: 681.546 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 625.946 ops/s + 681.546 ops/s # JMH version: 1.33 @@ -692,20 +692,20 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart -# Run progress: 45.45% complete, ETA 00:03:46 +# Run progress: 45.45% complete, ETA 00:03:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2819732415564 as seed for Random +# Warmup Iteration 1: Using SEED=2984316063953 as seed for Random WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release -155.405 ops/s -Iteration 1: 171.558 ops/s +164.663 ops/s +Iteration 1: 203.630 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 171.558 ops/s + 203.630 ops/s # JMH version: 1.33 @@ -720,15 +720,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare -# Run progress: 48.48% complete, ETA 00:03:34 +# Run progress: 48.48% complete, ETA 00:03:33 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2833146713706 as seed for Random -308.191 ops/s -Iteration 1: 649.457 ops/s +# Warmup Iteration 1: Using SEED=2997598204030 as seed for Random +524.270 ops/s +Iteration 1: 670.383 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 649.457 ops/s + 670.383 ops/s # JMH version: 1.33 @@ -743,15 +743,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi -# Run progress: 51.52% complete, ETA 00:03:22 +# Run progress: 51.52% complete, ETA 00:03:21 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2846436250582 as seed for Random -210.985 ops/s -Iteration 1: 265.445 ops/s +# Warmup Iteration 1: Using SEED=3010758249433 as seed for Random +279.681 ops/s +Iteration 1: 316.836 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 265.445 ops/s + 316.836 ops/s # JMH version: 1.33 @@ -766,15 +766,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson -# Run progress: 54.55% complete, ETA 00:03:10 +# Run progress: 54.55% complete, ETA 00:03:09 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2859754187536 as seed for Random -138.606 ops/s -Iteration 1: 217.777 ops/s +# Warmup Iteration 1: Using SEED=3023992619245 as seed for Random +145.556 ops/s +Iteration 1: 236.531 ops/s Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 217.777 ops/s + 236.531 ops/s # JMH version: 1.33 @@ -789,15 +789,15 @@ Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson -# Run progress: 57.58% complete, ETA 00:02:58 +# Run progress: 57.58% complete, ETA 00:02:57 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2873103911795 as seed for Random -254.246 ops/s -Iteration 1: 334.783 ops/s +# Warmup Iteration 1: Using SEED=3037260845268 as seed for Random +316.502 ops/s +Iteration 1: 403.367 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 334.783 ops/s + 403.367 ops/s # JMH version: 1.33 @@ -812,15 +812,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson -# Run progress: 60.61% complete, ETA 00:02:46 +# Run progress: 60.61% complete, ETA 00:02:44 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2886440230376 as seed for Random -119.427 ops/s -Iteration 1: 149.418 ops/s +# Warmup Iteration 1: Using SEED=3050535900211 as seed for Random +117.031 ops/s +Iteration 1: 143.572 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 149.418 ops/s + 143.572 ops/s # JMH version: 1.33 @@ -835,15 +835,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson -# Run progress: 63.64% complete, ETA 00:02:33 +# Run progress: 63.64% complete, ETA 00:02:32 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2900053217105 as seed for Random -364.345 ops/s -Iteration 1: 417.351 ops/s +# Warmup Iteration 1: Using SEED=3064072981340 as seed for Random +394.089 ops/s +Iteration 1: 521.780 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 417.351 ops/s + 521.780 ops/s # JMH version: 1.33 @@ -858,15 +858,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson -# Run progress: 66.67% complete, ETA 00:02:21 +# Run progress: 66.67% complete, ETA 00:02:20 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2913320330917 as seed for Random -312.653 ops/s -Iteration 1: 447.749 ops/s +# Warmup Iteration 1: Using SEED=3077367719847 as seed for Random +416.776 ops/s +Iteration 1: 502.041 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 447.749 ops/s + 502.041 ops/s # JMH version: 1.33 @@ -881,15 +881,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio -# Run progress: 69.70% complete, ETA 00:02:08 +# Run progress: 69.70% complete, ETA 00:02:07 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2926744638420 as seed for Random -98.999 ops/s -Iteration 1: 131.508 ops/s +# Warmup Iteration 1: Using SEED=3090587327563 as seed for Random +107.496 ops/s +Iteration 1: 153.996 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 131.508 ops/s + 153.996 ops/s # JMH version: 1.33 @@ -904,15 +904,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple -# Run progress: 72.73% complete, ETA 00:01:56 +# Run progress: 72.73% complete, ETA 00:01:55 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2940254056343 as seed for Random -60.657 ops/s -Iteration 1: 72.359 ops/s +# Warmup Iteration 1: Using SEED=3103979147132 as seed for Random +67.888 ops/s +Iteration 1: 77.167 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 72.359 ops/s + 77.167 ops/s # JMH version: 1.33 @@ -927,15 +927,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson -# Run progress: 75.76% complete, ETA 00:01:43 +# Run progress: 75.76% complete, ETA 00:01:42 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2954233934361 as seed for Random -114.248 ops/s -Iteration 1: 194.060 ops/s +# Warmup Iteration 1: Using SEED=3117618384230 as seed for Random +143.736 ops/s +Iteration 1: 214.361 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 194.060 ops/s + 214.361 ops/s # JMH version: 1.33 @@ -950,15 +950,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson -# Run progress: 78.79% complete, ETA 00:01:30 +# Run progress: 78.79% complete, ETA 00:01:29 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2967652354958 as seed for Random -16.792 ops/s -Iteration 1: 25.584 ops/s +# Warmup Iteration 1: Using SEED=3130970746980 as seed for Random +25.685 ops/s +Iteration 1: 28.171 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 25.584 ops/s + 28.171 ops/s # JMH version: 1.33 @@ -973,15 +973,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi -# Run progress: 81.82% complete, ETA 00:01:18 +# Run progress: 81.82% complete, ETA 00:01:17 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2983001556999 as seed for Random -252.463 ops/s -Iteration 1: 344.869 ops/s +# Warmup Iteration 1: Using SEED=3145934117169 as seed for Random +226.581 ops/s +Iteration 1: 326.251 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 344.869 ops/s + 326.251 ops/s # JMH version: 1.33 @@ -996,15 +996,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson -# Run progress: 84.85% complete, ETA 00:01:05 +# Run progress: 84.85% complete, ETA 00:01:04 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2996320917119 as seed for Random -177.744 ops/s -Iteration 1: 232.026 ops/s +# Warmup Iteration 1: Using SEED=3159194845961 as seed for Random +202.423 ops/s +Iteration 1: 245.874 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 232.026 ops/s + 245.874 ops/s # JMH version: 1.33 @@ -1019,15 +1019,15 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": # Benchmark mode: Throughput, ops/time # Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson -# Run progress: 87.88% complete, ETA 00:00:52 +# Run progress: 87.88% complete, ETA 00:00:51 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3009780184588 as seed for Random -36.558 ops/s -Iteration 1: 45.052 ops/s +# Warmup Iteration 1: Using SEED=3172600929692 as seed for Random +43.920 ops/s +Iteration 1: 53.044 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 45.052 ops/s + 53.044 ops/s # JMH version: 1.33 @@ -1044,13 +1044,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": # Run progress: 90.91% complete, ETA 00:00:39 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3024402305575 as seed for Random -11.855 ops/s -Iteration 1: 11.480 ops/s +# Warmup Iteration 1: Using SEED=3186874015322 as seed for Random +12.023 ops/s +Iteration 1: 14.838 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 11.480 ops/s + 14.838 ops/s # JMH version: 1.33 @@ -1067,13 +1067,13 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": # Run progress: 93.94% complete, ETA 00:00:26 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3041904278954 as seed for Random -28.835 ops/s -Iteration 1: 30.722 ops/s +# Warmup Iteration 1: Using SEED=3203567703426 as seed for Random +27.517 ops/s +Iteration 1: 31.735 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 30.722 ops/s + 31.735 ops/s # JMH version: 1.33 @@ -1090,16 +1090,16 @@ Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": # Run progress: 96.97% complete, ETA 00:00:13 # Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3056409438475 as seed for Random -41.903 ops/s -Iteration 1: 45.811 ops/s +# Warmup Iteration 1: Using SEED=3218015648676 as seed for Random +47.839 ops/s +Iteration 1: 49.980 ops/s Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 45.811 ops/s + 49.980 ops/s -# Run complete. Total time: 00:07:19 +# Run complete. Total time: 00:07:15 REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial @@ -1108,35 +1108,35 @@ the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from th Do not assume the numbers tell you what you want them to tell. Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 685.364 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 457.675 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 757.298 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 716.442 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 216.540 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 35.905 ops/s -c.g.f.j.databind.Serialization.genson thrpt 448.822 ops/s -c.g.f.j.databind.Serialization.gson thrpt 193.532 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 572.937 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 417.129 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 587.267 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 134.091 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 209.004 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 625.946 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 171.558 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 649.457 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 265.445 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 217.777 ops/s -c.g.f.j.stream.Serialization.genson thrpt 334.783 ops/s -c.g.f.j.stream.Serialization.gson thrpt 149.418 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 417.351 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 447.749 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 131.508 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 72.359 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 194.060 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 25.584 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 344.869 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 232.026 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 45.052 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 11.480 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 30.722 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 45.811 ops/s +c.g.f.j.databind.Serialization.avajejsonb thrpt 725.793 ops/s +c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 651.291 ops/s +c.g.f.j.databind.Serialization.dsljson thrpt 829.417 ops/s +c.g.f.j.databind.Serialization.dsljson_reflection thrpt 682.035 ops/s +c.g.f.j.databind.Serialization.fastjson thrpt 222.252 ops/s +c.g.f.j.databind.Serialization.flexjson thrpt 40.673 ops/s +c.g.f.j.databind.Serialization.genson thrpt 486.659 ops/s +c.g.f.j.databind.Serialization.gson thrpt 228.216 ops/s +c.g.f.j.databind.Serialization.jackson thrpt 672.722 ops/s +c.g.f.j.databind.Serialization.jackson_afterburner thrpt 570.926 ops/s +c.g.f.j.databind.Serialization.jackson_blackbird thrpt 638.670 ops/s +c.g.f.j.databind.Serialization.jodd thrpt 133.432 ops/s +c.g.f.j.databind.Serialization.johnzon thrpt 233.774 ops/s +c.g.f.j.databind.Serialization.jsoniter thrpt 681.546 ops/s +c.g.f.j.databind.Serialization.jsonsmart thrpt 203.630 ops/s +c.g.f.j.databind.Serialization.logansquare thrpt 670.383 ops/s +c.g.f.j.databind.Serialization.moshi thrpt 316.836 ops/s +c.g.f.j.databind.Serialization.yasson thrpt 236.531 ops/s +c.g.f.j.stream.Serialization.genson thrpt 403.367 ops/s +c.g.f.j.stream.Serialization.gson thrpt 143.572 ops/s +c.g.f.j.stream.Serialization.jackson thrpt 521.780 ops/s +c.g.f.j.stream.Serialization.javaxjson thrpt 502.041 ops/s +c.g.f.j.stream.Serialization.jsonio thrpt 153.996 ops/s +c.g.f.j.stream.Serialization.jsonsimple thrpt 77.167 ops/s +c.g.f.j.stream.Serialization.minimaljson thrpt 214.361 ops/s +c.g.f.j.stream.Serialization.mjson thrpt 28.171 ops/s +c.g.f.j.stream.Serialization.moshi thrpt 326.251 ops/s +c.g.f.j.stream.Serialization.nanojson thrpt 245.874 ops/s +c.g.f.j.stream.Serialization.orgjson thrpt 53.044 ops/s +c.g.f.j.stream.Serialization.purejson thrpt 14.838 ops/s +c.g.f.j.stream.Serialization.tapestry thrpt 31.735 ops/s +c.g.f.j.stream.Serialization.underscore_java thrpt 49.980 ops/s From f34b2a1a9a03151fc61913064cdf821a6d2185aa Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 30 Oct 2022 15:09:38 +0000 Subject: [PATCH 28/42] #53 adding gitignore and eleting txt results --- .gitignore | 2 + output/clients-deser-1-1.txt | 379 ---------- output/clients-deser-1-10.txt | 379 ---------- output/clients-deser-1-100.txt | 379 ---------- output/clients-deser-1-1000.txt | 379 ---------- output/clients-ser-1-1.txt | 379 ---------- output/clients-ser-1-10.txt | 379 ---------- output/clients-ser-1-100.txt | 379 ---------- output/clients-ser-1-1000.txt | 379 ---------- output/users-deser-1-1.txt | 1123 ------------------------------ output/users-deser-1-10.txt | 1123 ------------------------------ output/users-deser-1-100.txt | 1123 ------------------------------ output/users-deser-1-1000.txt | 1123 ------------------------------ output/users-ser-1-1.txt | 1142 ------------------------------- output/users-ser-1-10.txt | 1142 ------------------------------- output/users-ser-1-100.txt | 1142 ------------------------------- output/users-ser-1-1000.txt | 1142 ------------------------------- 17 files changed, 2 insertions(+), 12092 deletions(-) delete mode 100644 output/clients-deser-1-1.txt delete mode 100644 output/clients-deser-1-10.txt delete mode 100644 output/clients-deser-1-100.txt delete mode 100644 output/clients-deser-1-1000.txt delete mode 100644 output/clients-ser-1-1.txt delete mode 100644 output/clients-ser-1-10.txt delete mode 100644 output/clients-ser-1-100.txt delete mode 100644 output/clients-ser-1-1000.txt delete mode 100644 output/users-deser-1-1.txt delete mode 100644 output/users-deser-1-10.txt delete mode 100644 output/users-deser-1-100.txt delete mode 100644 output/users-deser-1-1000.txt delete mode 100644 output/users-ser-1-1.txt delete mode 100644 output/users-ser-1-10.txt delete mode 100644 output/users-ser-1-100.txt delete mode 100644 output/users-ser-1-1000.txt diff --git a/.gitignore b/.gitignore index ae8d1f1..2b900d1 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,5 @@ out/ *.json !ami.json *.log + +output/*.txt \ No newline at end of file diff --git a/output/clients-deser-1-1.txt b/output/clients-deser-1-1.txt deleted file mode 100644 index 669cce2..0000000 --- a/output/clients-deser-1-1.txt +++ /dev/null @@ -1,379 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:03:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3863932840349 as seed for Random -94243.333 ops/s -Iteration 1: 266552.054 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 266552.054 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson - -# Run progress: 6.67% complete, ETA 00:03:04 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3877016387257 as seed for Random -83018.006 ops/s -Iteration 1: 194037.620 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 194037.620 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 13.33% complete, ETA 00:02:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3890121957955 as seed for Random -412677.924 ops/s -Iteration 1: 716381.768 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 716381.768 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 20.00% complete, ETA 00:02:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3903209052862 as seed for Random -464683.845 ops/s -Iteration 1: 610371.502 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 610371.502 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 26.67% complete, ETA 00:02:24 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3916272103228 as seed for Random -34260.819 ops/s -Iteration 1: 147572.588 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 147572.588 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 33.33% complete, ETA 00:02:11 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3929458512996 as seed for Random -24052.252 ops/s -Iteration 1: 49394.643 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 49394.643 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 40.00% complete, ETA 00:01:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3942578587538 as seed for Random -53266.836 ops/s -Iteration 1: 129182.434 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 129182.434 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 46.67% complete, ETA 00:01:44 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3955700154944 as seed for Random -103350.607 ops/s -Iteration 1: 184845.139 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 184845.139 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 53.33% complete, ETA 00:01:31 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3968756570149 as seed for Random -154964.193 ops/s -Iteration 1: 357907.233 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 357907.233 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 60.00% complete, ETA 00:01:18 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3981801190613 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -99463.997 ops/s -Iteration 1: 252067.749 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 252067.749 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 66.67% complete, ETA 00:01:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3994873093333 as seed for Random -135098.079 ops/s -Iteration 1: 381649.614 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 381649.614 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 73.33% complete, ETA 00:00:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4007953440456 as seed for Random -83357.389 ops/s -Iteration 1: 164723.490 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 164723.490 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 80.00% complete, ETA 00:00:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4021018968239 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -146472.336 ops/s -Iteration 1: 377677.919 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 377677.919 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare - -# Run progress: 86.67% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4034135626375 as seed for Random -27628.945 ops/s -Iteration 1: 52009.821 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 52009.821 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi - -# Run progress: 93.33% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4047255273606 as seed for Random -42414.816 ops/s -Iteration 1: 129176.046 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 129176.046 ops/s - - -# Run complete. Total time: 00:03:16 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 266552.054 ops/s -Deserialization.avajejsonb_jackson thrpt 194037.620 ops/s -Deserialization.dsljson thrpt 716381.768 ops/s -Deserialization.dsljson_reflection thrpt 610371.502 ops/s -Deserialization.fastjson thrpt 147572.588 ops/s -Deserialization.flexjson thrpt 49394.643 ops/s -Deserialization.genson thrpt 129182.434 ops/s -Deserialization.gson thrpt 184845.139 ops/s -Deserialization.jackson thrpt 357907.233 ops/s -Deserialization.jackson_afterburner thrpt 252067.749 ops/s -Deserialization.jackson_blackbird thrpt 381649.614 ops/s -Deserialization.jodd thrpt 164723.490 ops/s -Deserialization.jsoniter thrpt 377677.919 ops/s -Deserialization.logansquare thrpt 52009.821 ops/s -Deserialization.moshi thrpt 129176.046 ops/s diff --git a/output/clients-deser-1-10.txt b/output/clients-deser-1-10.txt deleted file mode 100644 index 2c694ba..0000000 --- a/output/clients-deser-1-10.txt +++ /dev/null @@ -1,379 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:03:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4257926219405 as seed for Random -9827.037 ops/s -Iteration 1: 19052.382 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 19052.382 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson - -# Run progress: 6.67% complete, ETA 00:03:04 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4271031939389 as seed for Random -5665.708 ops/s -Iteration 1: 15049.866 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 15049.866 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 13.33% complete, ETA 00:02:51 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4284219073740 as seed for Random -49294.406 ops/s -Iteration 1: 78790.504 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 78790.504 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 20.00% complete, ETA 00:02:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4297271797428 as seed for Random -38578.814 ops/s -Iteration 1: 57242.114 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 57242.114 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 26.67% complete, ETA 00:02:24 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4310367646062 as seed for Random -4490.201 ops/s -Iteration 1: 6490.330 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 6490.330 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 33.33% complete, ETA 00:02:11 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4323480705608 as seed for Random -1440.492 ops/s -Iteration 1: 3056.945 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 3056.945 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 40.00% complete, ETA 00:01:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4336621278534 as seed for Random -1687.998 ops/s -Iteration 1: 1744.965 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 1744.965 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 46.67% complete, ETA 00:01:44 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4349667971048 as seed for Random -1620.570 ops/s -Iteration 1: 1752.723 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 1752.723 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 53.33% complete, ETA 00:01:31 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4362844259793 as seed for Random -3476.870 ops/s -Iteration 1: 10326.219 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 10326.219 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 60.00% complete, ETA 00:01:18 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4375947774978 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -3852.125 ops/s -Iteration 1: 8145.252 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 8145.252 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 66.67% complete, ETA 00:01:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4389099232300 as seed for Random -4649.050 ops/s -Iteration 1: 9119.401 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 9119.401 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 73.33% complete, ETA 00:00:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4402165521180 as seed for Random -5479.885 ops/s -Iteration 1: 11503.725 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 11503.725 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 80.00% complete, ETA 00:00:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4415208053288 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -5392.129 ops/s -Iteration 1: 17124.830 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 17124.830 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare - -# Run progress: 86.67% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4428305716311 as seed for Random -3954.384 ops/s -Iteration 1: 12139.233 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 12139.233 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi - -# Run progress: 93.33% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4441434344176 as seed for Random -5348.790 ops/s -Iteration 1: 12885.657 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 12885.657 ops/s - - -# Run complete. Total time: 00:03:16 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 19052.382 ops/s -Deserialization.avajejsonb_jackson thrpt 15049.866 ops/s -Deserialization.dsljson thrpt 78790.504 ops/s -Deserialization.dsljson_reflection thrpt 57242.114 ops/s -Deserialization.fastjson thrpt 6490.330 ops/s -Deserialization.flexjson thrpt 3056.945 ops/s -Deserialization.genson thrpt 1744.965 ops/s -Deserialization.gson thrpt 1752.723 ops/s -Deserialization.jackson thrpt 10326.219 ops/s -Deserialization.jackson_afterburner thrpt 8145.252 ops/s -Deserialization.jackson_blackbird thrpt 9119.401 ops/s -Deserialization.jodd thrpt 11503.725 ops/s -Deserialization.jsoniter thrpt 17124.830 ops/s -Deserialization.logansquare thrpt 12139.233 ops/s -Deserialization.moshi thrpt 12885.657 ops/s diff --git a/output/clients-deser-1-100.txt b/output/clients-deser-1-100.txt deleted file mode 100644 index 275512c..0000000 --- a/output/clients-deser-1-100.txt +++ /dev/null @@ -1,379 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:03:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4653436024976 as seed for Random -753.979 ops/s -Iteration 1: 1855.004 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 1855.004 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson - -# Run progress: 6.67% complete, ETA 00:03:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4666560530281 as seed for Random -383.945 ops/s -Iteration 1: 1198.416 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 1198.416 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 13.33% complete, ETA 00:02:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4679755788851 as seed for Random -1319.338 ops/s -Iteration 1: 6458.276 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 6458.276 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 20.00% complete, ETA 00:02:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4692936922335 as seed for Random -4237.295 ops/s -Iteration 1: 6170.873 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 6170.873 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 26.67% complete, ETA 00:02:24 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4706058649411 as seed for Random -451.717 ops/s -Iteration 1: 1033.706 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 1033.706 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 33.33% complete, ETA 00:02:11 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4719265740968 as seed for Random -143.274 ops/s -Iteration 1: 287.712 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 287.712 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 40.00% complete, ETA 00:01:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4732488014398 as seed for Random -169.909 ops/s -Iteration 1: 1242.564 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 1242.564 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 46.67% complete, ETA 00:01:45 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4745716736749 as seed for Random -502.940 ops/s -Iteration 1: 1400.848 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 1400.848 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 53.33% complete, ETA 00:01:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4758887018174 as seed for Random -278.480 ops/s -Iteration 1: 746.885 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 746.885 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 60.00% complete, ETA 00:01:19 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4772069293029 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -329.886 ops/s -Iteration 1: 886.761 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 886.761 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 66.67% complete, ETA 00:01:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4785169711042 as seed for Random -429.633 ops/s -Iteration 1: 960.414 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 960.414 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 73.33% complete, ETA 00:00:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4798288348526 as seed for Random -430.261 ops/s -Iteration 1: 1047.312 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 1047.312 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 80.00% complete, ETA 00:00:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4811426161444 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -520.472 ops/s -Iteration 1: 710.114 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 710.114 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare - -# Run progress: 86.67% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4824549782988 as seed for Random -419.402 ops/s -Iteration 1: 788.272 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 788.272 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi - -# Run progress: 93.33% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4837723369293 as seed for Random -489.991 ops/s -Iteration 1: 1294.174 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 1294.174 ops/s - - -# Run complete. Total time: 00:03:17 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 1855.004 ops/s -Deserialization.avajejsonb_jackson thrpt 1198.416 ops/s -Deserialization.dsljson thrpt 6458.276 ops/s -Deserialization.dsljson_reflection thrpt 6170.873 ops/s -Deserialization.fastjson thrpt 1033.706 ops/s -Deserialization.flexjson thrpt 287.712 ops/s -Deserialization.genson thrpt 1242.564 ops/s -Deserialization.gson thrpt 1400.848 ops/s -Deserialization.jackson thrpt 746.885 ops/s -Deserialization.jackson_afterburner thrpt 886.761 ops/s -Deserialization.jackson_blackbird thrpt 960.414 ops/s -Deserialization.jodd thrpt 1047.312 ops/s -Deserialization.jsoniter thrpt 710.114 ops/s -Deserialization.logansquare thrpt 788.272 ops/s -Deserialization.moshi thrpt 1294.174 ops/s diff --git a/output/clients-deser-1-1000.txt b/output/clients-deser-1-1000.txt deleted file mode 100644 index 0934172..0000000 --- a/output/clients-deser-1-1000.txt +++ /dev/null @@ -1,379 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:03:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5054111580821 as seed for Random -101.472 ops/s -Iteration 1: 167.975 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 167.975 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson - -# Run progress: 6.67% complete, ETA 00:03:11 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5067731892486 as seed for Random -73.548 ops/s -Iteration 1: 150.164 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 150.164 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 13.33% complete, ETA 00:02:57 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5081304720402 as seed for Random -324.178 ops/s -Iteration 1: 688.228 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 688.228 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 20.00% complete, ETA 00:02:42 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5094631871865 as seed for Random -391.077 ops/s -Iteration 1: 534.156 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 534.156 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 26.67% complete, ETA 00:02:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5107952174616 as seed for Random -41.325 ops/s -Iteration 1: 82.611 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 82.611 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 33.33% complete, ETA 00:02:15 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5121889811142 as seed for Random -13.198 ops/s -Iteration 1: 27.843 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 27.843 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 40.00% complete, ETA 00:02:04 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5137026561714 as seed for Random -81.221 ops/s -Iteration 1: 140.110 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 140.110 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 46.67% complete, ETA 00:01:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5150582747990 as seed for Random -61.389 ops/s -Iteration 1: 134.380 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 134.380 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 53.33% complete, ETA 00:01:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5164079126137 as seed for Random -38.162 ops/s -Iteration 1: 113.430 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 113.430 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 60.00% complete, ETA 00:01:22 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5177666571153 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -47.739 ops/s -Iteration 1: 121.328 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 121.328 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 66.67% complete, ETA 00:01:08 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5191310496050 as seed for Random -40.706 ops/s -Iteration 1: 105.858 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 105.858 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 73.33% complete, ETA 00:00:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5204818090363 as seed for Random -53.539 ops/s -Iteration 1: 91.208 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 91.208 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 80.00% complete, ETA 00:00:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5218527150797 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -60.958 ops/s -Iteration 1: 157.515 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 157.515 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare - -# Run progress: 86.67% complete, ETA 00:00:27 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5231983961053 as seed for Random -37.382 ops/s -Iteration 1: 110.291 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 110.291 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi - -# Run progress: 93.33% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5245774126764 as seed for Random -43.653 ops/s -Iteration 1: 90.905 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 90.905 ops/s - - -# Run complete. Total time: 00:03:25 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -Deserialization.avajejsonb thrpt 167.975 ops/s -Deserialization.avajejsonb_jackson thrpt 150.164 ops/s -Deserialization.dsljson thrpt 688.228 ops/s -Deserialization.dsljson_reflection thrpt 534.156 ops/s -Deserialization.fastjson thrpt 82.611 ops/s -Deserialization.flexjson thrpt 27.843 ops/s -Deserialization.genson thrpt 140.110 ops/s -Deserialization.gson thrpt 134.380 ops/s -Deserialization.jackson thrpt 113.430 ops/s -Deserialization.jackson_afterburner thrpt 121.328 ops/s -Deserialization.jackson_blackbird thrpt 105.858 ops/s -Deserialization.jodd thrpt 91.208 ops/s -Deserialization.jsoniter thrpt 157.515 ops/s -Deserialization.logansquare thrpt 110.291 ops/s -Deserialization.moshi thrpt 90.905 ops/s diff --git a/output/clients-ser-1-1.txt b/output/clients-ser-1-1.txt deleted file mode 100644 index 4fb4d17..0000000 --- a/output/clients-ser-1-1.txt +++ /dev/null @@ -1,379 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:03:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3667045893942 as seed for Random -294137.861 ops/s -Iteration 1: 486049.902 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 486049.902 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson - -# Run progress: 6.67% complete, ETA 00:03:04 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3680131447739 as seed for Random -160572.267 ops/s -Iteration 1: 251644.448 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 251644.448 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 13.33% complete, ETA 00:02:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3693253774127 as seed for Random -720819.710 ops/s -Iteration 1: 970737.993 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 970737.993 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 20.00% complete, ETA 00:02:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3706315953466 as seed for Random -392526.734 ops/s -Iteration 1: 449932.781 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 449932.781 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 26.67% complete, ETA 00:02:24 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3719419814263 as seed for Random -191578.017 ops/s -Iteration 1: 444243.208 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 444243.208 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 33.33% complete, ETA 00:02:11 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3732569889527 as seed for Random -2256.680 ops/s -Iteration 1: 1477.600 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1477.600 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 40.00% complete, ETA 00:01:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3745678717095 as seed for Random -202127.953 ops/s -Iteration 1: 252392.309 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 252392.309 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 46.67% complete, ETA 00:01:44 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3758773532510 as seed for Random -151769.443 ops/s -Iteration 1: 202557.244 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 202557.244 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 53.33% complete, ETA 00:01:31 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3771858594373 as seed for Random -291381.042 ops/s -Iteration 1: 518639.126 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 518639.126 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 60.00% complete, ETA 00:01:18 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3784960603313 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -247482.974 ops/s -Iteration 1: 411504.700 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 411504.700 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 66.67% complete, ETA 00:01:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3798003106962 as seed for Random -386602.421 ops/s -Iteration 1: 494148.122 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 494148.122 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 73.33% complete, ETA 00:00:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3811042982785 as seed for Random -87372.768 ops/s -Iteration 1: 151398.909 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 151398.909 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 80.00% complete, ETA 00:00:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3824069437140 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -517686.957 ops/s -Iteration 1: 651534.355 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 651534.355 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare - -# Run progress: 86.67% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3837113994521 as seed for Random -208004.809 ops/s -Iteration 1: 531336.884 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 531336.884 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi - -# Run progress: 93.33% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3850192903095 as seed for Random -137246.346 ops/s -Iteration 1: 223845.562 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 223845.562 ops/s - - -# Run complete. Total time: 00:03:16 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 486049.902 ops/s -Serialization.avajejsonb_jackson thrpt 251644.448 ops/s -Serialization.dsljson thrpt 970737.993 ops/s -Serialization.dsljson_reflection thrpt 449932.781 ops/s -Serialization.fastjson thrpt 444243.208 ops/s -Serialization.flexjson thrpt 1477.600 ops/s -Serialization.genson thrpt 252392.309 ops/s -Serialization.gson thrpt 202557.244 ops/s -Serialization.jackson thrpt 518639.126 ops/s -Serialization.jackson_afterburner thrpt 411504.700 ops/s -Serialization.jackson_blackbird thrpt 494148.122 ops/s -Serialization.jodd thrpt 151398.909 ops/s -Serialization.jsoniter thrpt 651534.355 ops/s -Serialization.logansquare thrpt 531336.884 ops/s -Serialization.moshi thrpt 223845.562 ops/s diff --git a/output/clients-ser-1-10.txt b/output/clients-ser-1-10.txt deleted file mode 100644 index 6ee87ea..0000000 --- a/output/clients-ser-1-10.txt +++ /dev/null @@ -1,379 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:03:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4060994647899 as seed for Random -32787.516 ops/s -Iteration 1: 41949.959 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 41949.959 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson - -# Run progress: 6.67% complete, ETA 00:03:04 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4074111600875 as seed for Random -26697.712 ops/s -Iteration 1: 39621.558 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 39621.558 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 13.33% complete, ETA 00:02:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4087202521555 as seed for Random -92574.739 ops/s -Iteration 1: 109765.015 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 109765.015 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 20.00% complete, ETA 00:02:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4100230689784 as seed for Random -61923.884 ops/s -Iteration 1: 74461.600 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 74461.600 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 26.67% complete, ETA 00:02:24 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4113312760157 as seed for Random -4580.057 ops/s -Iteration 1: 25252.360 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 25252.360 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 33.33% complete, ETA 00:02:10 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4126413887467 as seed for Random -601.543 ops/s -Iteration 1: 422.591 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 422.591 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 40.00% complete, ETA 00:01:57 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4139537839886 as seed for Random -11845.166 ops/s -Iteration 1: 32073.736 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 32073.736 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 46.67% complete, ETA 00:01:44 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4152612910823 as seed for Random -10935.292 ops/s -Iteration 1: 18465.907 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 18465.907 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 53.33% complete, ETA 00:01:31 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4165679831437 as seed for Random -22243.560 ops/s -Iteration 1: 34479.781 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 34479.781 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 60.00% complete, ETA 00:01:18 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4178827767583 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -20767.926 ops/s -Iteration 1: 30878.619 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 30878.619 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 66.67% complete, ETA 00:01:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4191911616875 as seed for Random -20971.413 ops/s -Iteration 1: 33480.945 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 33480.945 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 73.33% complete, ETA 00:00:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4205103453238 as seed for Random -4858.970 ops/s -Iteration 1: 13465.931 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 13465.931 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 80.00% complete, ETA 00:00:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4218154684619 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -18593.339 ops/s -Iteration 1: 38769.406 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 38769.406 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare - -# Run progress: 86.67% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4231236067750 as seed for Random -23128.323 ops/s -Iteration 1: 43774.201 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 43774.201 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi - -# Run progress: 93.33% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4244300844384 as seed for Random -12926.796 ops/s -Iteration 1: 24084.229 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 24084.229 ops/s - - -# Run complete. Total time: 00:03:16 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 41949.959 ops/s -Serialization.avajejsonb_jackson thrpt 39621.558 ops/s -Serialization.dsljson thrpt 109765.015 ops/s -Serialization.dsljson_reflection thrpt 74461.600 ops/s -Serialization.fastjson thrpt 25252.360 ops/s -Serialization.flexjson thrpt 422.591 ops/s -Serialization.genson thrpt 32073.736 ops/s -Serialization.gson thrpt 18465.907 ops/s -Serialization.jackson thrpt 34479.781 ops/s -Serialization.jackson_afterburner thrpt 30878.619 ops/s -Serialization.jackson_blackbird thrpt 33480.945 ops/s -Serialization.jodd thrpt 13465.931 ops/s -Serialization.jsoniter thrpt 38769.406 ops/s -Serialization.logansquare thrpt 43774.201 ops/s -Serialization.moshi thrpt 24084.229 ops/s diff --git a/output/clients-ser-1-100.txt b/output/clients-ser-1-100.txt deleted file mode 100644 index 31ac360..0000000 --- a/output/clients-ser-1-100.txt +++ /dev/null @@ -1,379 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:03:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4455171800928 as seed for Random -3445.587 ops/s -Iteration 1: 4251.263 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 4251.263 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson - -# Run progress: 6.67% complete, ETA 00:03:04 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4468249867237 as seed for Random -2407.222 ops/s -Iteration 1: 3887.783 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 3887.783 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 13.33% complete, ETA 00:02:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4481363996905 as seed for Random -7740.158 ops/s -Iteration 1: 11052.053 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 11052.053 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 20.00% complete, ETA 00:02:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4494568210653 as seed for Random -6536.210 ops/s -Iteration 1: 7740.268 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 7740.268 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 26.67% complete, ETA 00:02:24 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4507724018820 as seed for Random -1300.912 ops/s -Iteration 1: 2148.461 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 2148.461 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 33.33% complete, ETA 00:02:11 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4520934949872 as seed for Random -119.817 ops/s -Iteration 1: 138.173 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 138.173 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 40.00% complete, ETA 00:01:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4534440418068 as seed for Random -2311.120 ops/s -Iteration 1: 3036.285 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 3036.285 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 46.67% complete, ETA 00:01:45 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4547613263582 as seed for Random -1154.348 ops/s -Iteration 1: 1791.861 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 1791.861 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 53.33% complete, ETA 00:01:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4560807644646 as seed for Random -2120.911 ops/s -Iteration 1: 3041.512 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 3041.512 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 60.00% complete, ETA 00:01:19 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4573978157975 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -1828.282 ops/s -Iteration 1: 3157.173 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 3157.173 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 66.67% complete, ETA 00:01:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4587067027148 as seed for Random -2021.153 ops/s -Iteration 1: 2893.007 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 2893.007 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 73.33% complete, ETA 00:00:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4600330608521 as seed for Random -726.727 ops/s -Iteration 1: 1314.073 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 1314.073 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 80.00% complete, ETA 00:00:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4613511427293 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -3266.096 ops/s -Iteration 1: 4529.192 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 4529.192 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare - -# Run progress: 86.67% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4626645367545 as seed for Random -2629.561 ops/s -Iteration 1: 4245.448 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 4245.448 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi - -# Run progress: 93.33% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4639763140209 as seed for Random -1631.200 ops/s -Iteration 1: 2533.230 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 2533.230 ops/s - - -# Run complete. Total time: 00:03:17 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 4251.263 ops/s -Serialization.avajejsonb_jackson thrpt 3887.783 ops/s -Serialization.dsljson thrpt 11052.053 ops/s -Serialization.dsljson_reflection thrpt 7740.268 ops/s -Serialization.fastjson thrpt 2148.461 ops/s -Serialization.flexjson thrpt 138.173 ops/s -Serialization.genson thrpt 3036.285 ops/s -Serialization.gson thrpt 1791.861 ops/s -Serialization.jackson thrpt 3041.512 ops/s -Serialization.jackson_afterburner thrpt 3157.173 ops/s -Serialization.jackson_blackbird thrpt 2893.007 ops/s -Serialization.jodd thrpt 1314.073 ops/s -Serialization.jsoniter thrpt 4529.192 ops/s -Serialization.logansquare thrpt 4245.448 ops/s -Serialization.moshi thrpt 2533.230 ops/s diff --git a/output/clients-ser-1-1000.txt b/output/clients-ser-1-1000.txt deleted file mode 100644 index 455e316..0000000 --- a/output/clients-ser-1-1000.txt +++ /dev/null @@ -1,379 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:03:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4851553510029 as seed for Random -344.412 ops/s -Iteration 1: 416.916 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 416.916 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson - -# Run progress: 6.67% complete, ETA 00:03:06 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4864868061463 as seed for Random -247.130 ops/s -Iteration 1: 326.550 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 326.550 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 13.33% complete, ETA 00:02:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4878238274418 as seed for Random -910.098 ops/s -Iteration 1: 1046.192 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 1046.192 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 20.00% complete, ETA 00:02:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4891476612156 as seed for Random -682.333 ops/s -Iteration 1: 778.089 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 778.089 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 26.67% complete, ETA 00:02:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4904673703470 as seed for Random -119.738 ops/s -Iteration 1: 163.797 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 163.797 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 33.33% complete, ETA 00:02:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4918096580865 as seed for Random -19.257 ops/s -Iteration 1: 39.606 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 39.606 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 40.00% complete, ETA 00:02:01 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4932850908380 as seed for Random -248.007 ops/s -Iteration 1: 310.699 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 310.699 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 46.67% complete, ETA 00:01:48 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4946228414763 as seed for Random -141.627 ops/s -Iteration 1: 174.194 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 174.194 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 53.33% complete, ETA 00:01:34 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4959784624246 as seed for Random -138.932 ops/s -Iteration 1: 247.805 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 247.805 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 60.00% complete, ETA 00:01:21 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4973147085800 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -118.364 ops/s -Iteration 1: 249.029 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 249.029 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 66.67% complete, ETA 00:01:07 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4986534814390 as seed for Random -219.104 ops/s -Iteration 1: 295.806 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 295.806 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 73.33% complete, ETA 00:00:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=4999870768887 as seed for Random -86.875 ops/s -Iteration 1: 107.985 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 107.985 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 80.00% complete, ETA 00:00:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5013475833412 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -392.675 ops/s -Iteration 1: 405.315 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 405.315 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare - -# Run progress: 86.67% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5026758020644 as seed for Random -143.829 ops/s -Iteration 1: 363.614 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 363.614 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi - -# Run progress: 93.33% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=5040053930710 as seed for Random -147.942 ops/s -Iteration 1: 210.672 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 210.672 ops/s - - -# Run complete. Total time: 00:03:21 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -Serialization.avajejsonb thrpt 416.916 ops/s -Serialization.avajejsonb_jackson thrpt 326.550 ops/s -Serialization.dsljson thrpt 1046.192 ops/s -Serialization.dsljson_reflection thrpt 778.089 ops/s -Serialization.fastjson thrpt 163.797 ops/s -Serialization.flexjson thrpt 39.606 ops/s -Serialization.genson thrpt 310.699 ops/s -Serialization.gson thrpt 174.194 ops/s -Serialization.jackson thrpt 247.805 ops/s -Serialization.jackson_afterburner thrpt 249.029 ops/s -Serialization.jackson_blackbird thrpt 295.806 ops/s -Serialization.jodd thrpt 107.985 ops/s -Serialization.jsoniter thrpt 405.315 ops/s -Serialization.logansquare thrpt 363.614 ops/s -Serialization.moshi thrpt 210.672 ops/s diff --git a/output/users-deser-1-1.txt b/output/users-deser-1-1.txt deleted file mode 100644 index 636c09b..0000000 --- a/output/users-deser-1-1.txt +++ /dev/null @@ -1,1123 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:06:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=697016214871 as seed for Random -482418.836 ops/s -Iteration 1: 645854.008 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 645854.008 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson - -# Run progress: 3.03% complete, ETA 00:07:01 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=710099590842 as seed for Random -260650.675 ops/s -Iteration 1: 455127.756 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 455127.756 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon - -# Run progress: 6.06% complete, ETA 00:06:46 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=723142822960 as seed for Random - - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 18 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - - - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 9.09% complete, ETA 00:04:31 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=724100858790 as seed for Random -538158.081 ops/s -Iteration 1: 790408.434 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 790408.434 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:04:51 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=737224855896 as seed for Random -509671.545 ops/s -Iteration 1: 601842.471 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 601842.471 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 15.15% complete, ETA 00:04:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=750272348586 as seed for Random -108282.496 ops/s -Iteration 1: 213356.467 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 213356.467 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 18.18% complete, ETA 00:04:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=763283722116 as seed for Random -26272.426 ops/s -Iteration 1: 59145.866 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 59145.866 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 21.21% complete, ETA 00:04:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=776288719855 as seed for Random -155437.328 ops/s -Iteration 1: 252877.033 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 252877.033 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 24.24% complete, ETA 00:04:48 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=789395761018 as seed for Random -182318.732 ops/s -Iteration 1: 218988.115 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 218988.115 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 27.27% complete, ETA 00:04:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=802527447092 as seed for Random -272806.786 ops/s -Iteration 1: 442619.208 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 442619.208 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:04:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=815552553177 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -277938.132 ops/s -Iteration 1: 407753.034 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 407753.034 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:04:23 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=828574116266 as seed for Random -341396.365 ops/s -Iteration 1: 455083.070 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 455083.070 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 36.36% complete, ETA 00:04:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=841574841319 as seed for Random -187396.553 ops/s -Iteration 1: 273174.145 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 273174.145 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon - -# Run progress: 39.39% complete, ETA 00:04:02 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=854587076617 as seed for Random -34078.632 ops/s -Iteration 1: 77121.927 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 77121.927 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:03:51 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=867613563149 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -197676.341 ops/s -Iteration 1: 539224.121 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 539224.121 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart - -# Run progress: 45.45% complete, ETA 00:03:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=880644826664 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) -WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -200107.182 ops/s -Iteration 1: 317540.778 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 317540.778 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare - -# Run progress: 48.48% complete, ETA 00:03:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=893673134972 as seed for Random -77296.684 ops/s -Iteration 1: 201212.707 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 201212.707 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi - -# Run progress: 51.52% complete, ETA 00:03:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=906670205168 as seed for Random -172946.220 ops/s -Iteration 1: 272374.051 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 272374.051 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson - -# Run progress: 54.55% complete, ETA 00:03:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=919661086068 as seed for Random -41441.235 ops/s -Iteration 1: 64151.170 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 64151.170 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson - -# Run progress: 57.58% complete, ETA 00:02:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=932646731172 as seed for Random -182238.409 ops/s -Iteration 1: 273032.091 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 273032.091 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson - -# Run progress: 60.61% complete, ETA 00:02:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=945647231228 as seed for Random -168901.004 ops/s -Iteration 1: 242302.840 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 242302.840 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson - -# Run progress: 63.64% complete, ETA 00:02:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=958787309675 as seed for Random -314271.747 ops/s -Iteration 1: 445319.475 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 445319.475 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson - -# Run progress: 66.67% complete, ETA 00:02:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=971932369917 as seed for Random -20012.175 ops/s -Iteration 1: 31811.739 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 31811.739 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio - -# Run progress: 69.70% complete, ETA 00:02:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=984861793982 as seed for Random -14426.904 ops/s -Iteration 1: 14260.967 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 14260.967 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple - -# Run progress: 72.73% complete, ETA 00:01:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=997913622099 as seed for Random -64784.982 ops/s -Iteration 1: 86237.956 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 86237.956 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson - -# Run progress: 75.76% complete, ETA 00:01:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1010983766299 as seed for Random -61938.573 ops/s -Iteration 1: 193667.066 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 193667.066 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson - -# Run progress: 78.79% complete, ETA 00:01:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1024082631761 as seed for Random -108140.738 ops/s -Iteration 1: 150640.603 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 150640.603 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi - -# Run progress: 81.82% complete, ETA 00:01:15 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1037093283626 as seed for Random -110265.423 ops/s -Iteration 1: 238954.010 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 238954.010 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson - -# Run progress: 84.85% complete, ETA 00:01:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1050143348722 as seed for Random -70466.155 ops/s -Iteration 1: 80321.287 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 80321.287 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson - -# Run progress: 87.88% complete, ETA 00:00:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1063186342773 as seed for Random -111419.387 ops/s -Iteration 1: 157344.562 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 157344.562 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson - -# Run progress: 90.91% complete, ETA 00:00:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1076277823094 as seed for Random -77053.854 ops/s -Iteration 1: 100892.800 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 100892.800 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry - -# Run progress: 93.94% complete, ETA 00:00:25 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1089356653179 as seed for Random -174749.237 ops/s -Iteration 1: 296486.377 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 296486.377 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java - -# Run progress: 96.97% complete, ETA 00:00:12 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1102430885166 as seed for Random -128084.029 ops/s -Iteration 1: 246649.073 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 246649.073 ops/s - - -# Run complete. Total time: 00:06:58 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 645854.008 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 455127.756 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 790408.434 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 601842.471 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 213356.467 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 59145.866 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 252877.033 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 218988.115 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 442619.208 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 407753.034 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 455083.070 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 273174.145 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 77121.927 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 539224.121 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 317540.778 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 201212.707 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 272374.051 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 64151.170 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 273032.091 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 242302.840 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 445319.475 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 31811.739 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 14260.967 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 86237.956 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 193667.066 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 150640.603 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 238954.010 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 80321.287 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 157344.562 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 100892.800 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 296486.377 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 246649.073 ops/s diff --git a/output/users-deser-1-10.txt b/output/users-deser-1-10.txt deleted file mode 100644 index c0e63a6..0000000 --- a/output/users-deser-1-10.txt +++ /dev/null @@ -1,1123 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:06:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1535608958225 as seed for Random -49514.719 ops/s -Iteration 1: 65352.788 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 65352.788 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson - -# Run progress: 3.03% complete, ETA 00:07:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1548706477158 as seed for Random -30421.748 ops/s -Iteration 1: 52496.588 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 52496.588 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon - -# Run progress: 6.06% complete, ETA 00:06:46 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1561855218773 as seed for Random - - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - - - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 9.09% complete, ETA 00:04:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1562839142044 as seed for Random -55450.209 ops/s -Iteration 1: 77233.255 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 77233.255 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:04:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1575949517087 as seed for Random -54671.630 ops/s -Iteration 1: 63926.881 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 63926.881 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 15.15% complete, ETA 00:04:59 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1589042751051 as seed for Random -20781.243 ops/s -Iteration 1: 33273.861 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 33273.861 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 18.18% complete, ETA 00:04:59 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1602088186706 as seed for Random -1899.679 ops/s -Iteration 1: 6700.813 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 6700.813 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 21.21% complete, ETA 00:04:55 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1615225146376 as seed for Random -20805.933 ops/s -Iteration 1: 34646.159 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 34646.159 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 24.24% complete, ETA 00:04:49 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1628287900238 as seed for Random -19642.965 ops/s -Iteration 1: 32875.335 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 32875.335 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 27.27% complete, ETA 00:04:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1641332684933 as seed for Random -31317.427 ops/s -Iteration 1: 50500.855 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 50500.855 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:04:33 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1654380221583 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -38395.232 ops/s -Iteration 1: 55568.354 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 55568.354 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:04:23 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1667456922657 as seed for Random -46872.061 ops/s -Iteration 1: 56432.608 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 56432.608 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 36.36% complete, ETA 00:04:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1680526940973 as seed for Random -14908.722 ops/s -Iteration 1: 21654.106 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 21654.106 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon - -# Run progress: 39.39% complete, ETA 00:04:02 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1693535367023 as seed for Random -6680.359 ops/s -Iteration 1: 9858.997 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 9858.997 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:03:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1706544457420 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -42103.970 ops/s -Iteration 1: 67887.968 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 67887.968 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart - -# Run progress: 45.45% complete, ETA 00:03:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1719528196223 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) -WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -30483.569 ops/s -Iteration 1: 38958.045 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 38958.045 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare - -# Run progress: 48.48% complete, ETA 00:03:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1732557755552 as seed for Random -31647.431 ops/s -Iteration 1: 44057.882 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 44057.882 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi - -# Run progress: 51.52% complete, ETA 00:03:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1745582168310 as seed for Random -22815.671 ops/s -Iteration 1: 32388.327 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 32388.327 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson - -# Run progress: 54.55% complete, ETA 00:03:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1758605864467 as seed for Random -2536.181 ops/s -Iteration 1: 6902.959 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 6902.959 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson - -# Run progress: 57.58% complete, ETA 00:02:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1771692266493 as seed for Random -5473.895 ops/s -Iteration 1: 11201.254 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 11201.254 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson - -# Run progress: 60.61% complete, ETA 00:02:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1784763369820 as seed for Random -5562.615 ops/s -Iteration 1: 26885.369 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 26885.369 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson - -# Run progress: 63.64% complete, ETA 00:02:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1797882338499 as seed for Random -34987.526 ops/s -Iteration 1: 48212.024 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 48212.024 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson - -# Run progress: 66.67% complete, ETA 00:02:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1810987024933 as seed for Random -2734.352 ops/s -Iteration 1: 2862.544 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 2862.544 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio - -# Run progress: 69.70% complete, ETA 00:02:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1824058197173 as seed for Random -4846.332 ops/s -Iteration 1: 11926.669 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 11926.669 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple - -# Run progress: 72.73% complete, ETA 00:01:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1837161923236 as seed for Random -9443.336 ops/s -Iteration 1: 13546.187 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 13546.187 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson - -# Run progress: 75.76% complete, ETA 00:01:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1850231023004 as seed for Random -6144.263 ops/s -Iteration 1: 18352.923 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 18352.923 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson - -# Run progress: 78.79% complete, ETA 00:01:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1863305842691 as seed for Random -5303.156 ops/s -Iteration 1: 10154.870 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 10154.870 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi - -# Run progress: 81.82% complete, ETA 00:01:15 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1876332726701 as seed for Random -17346.686 ops/s -Iteration 1: 28225.222 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 28225.222 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson - -# Run progress: 84.85% complete, ETA 00:01:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1889426804693 as seed for Random -19374.936 ops/s -Iteration 1: 23293.410 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 23293.410 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson - -# Run progress: 87.88% complete, ETA 00:00:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1902544869147 as seed for Random -9281.509 ops/s -Iteration 1: 13043.082 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 13043.082 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson - -# Run progress: 90.91% complete, ETA 00:00:38 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1915693860478 as seed for Random -6745.972 ops/s -Iteration 1: 11588.066 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 11588.066 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry - -# Run progress: 93.94% complete, ETA 00:00:25 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1928719053836 as seed for Random -20425.800 ops/s -Iteration 1: 32200.345 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 32200.345 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java - -# Run progress: 96.97% complete, ETA 00:00:12 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1941742798660 as seed for Random -12677.599 ops/s -Iteration 1: 25884.889 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 25884.889 ops/s - - -# Run complete. Total time: 00:06:59 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 65352.788 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 52496.588 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 77233.255 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 63926.881 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 33273.861 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 6700.813 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 34646.159 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 32875.335 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 50500.855 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 55568.354 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 56432.608 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 21654.106 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 9858.997 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 67887.968 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 38958.045 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 44057.882 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 32388.327 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 6902.959 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 11201.254 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 26885.369 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 48212.024 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2862.544 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 11926.669 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 13546.187 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 18352.923 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 10154.870 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 28225.222 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 23293.410 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 13043.082 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 11588.066 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 32200.345 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 25884.889 ops/s diff --git a/output/users-deser-1-100.txt b/output/users-deser-1-100.txt deleted file mode 100644 index 7d5cecd..0000000 --- a/output/users-deser-1-100.txt +++ /dev/null @@ -1,1123 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:06:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2376262314008 as seed for Random -4507.206 ops/s -Iteration 1: 5721.850 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 5721.850 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson - -# Run progress: 3.03% complete, ETA 00:06:59 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2389348330923 as seed for Random -3135.222 ops/s -Iteration 1: 4646.396 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 4646.396 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon - -# Run progress: 6.06% complete, ETA 00:06:47 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2402548278840 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - - - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 9.09% complete, ETA 00:04:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2403471298231 as seed for Random -6617.598 ops/s -Iteration 1: 8106.421 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 8106.421 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:04:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2416537858854 as seed for Random -5847.796 ops/s -Iteration 1: 6939.056 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 6939.056 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 15.15% complete, ETA 00:04:59 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2429638669974 as seed for Random -2251.038 ops/s -Iteration 1: 3546.827 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 3546.827 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 18.18% complete, ETA 00:04:59 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2442763312840 as seed for Random -243.663 ops/s -Iteration 1: 750.017 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 750.017 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 21.21% complete, ETA 00:04:55 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2455886567969 as seed for Random -2336.342 ops/s -Iteration 1: 3719.107 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 3719.107 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 24.24% complete, ETA 00:04:49 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2468926735311 as seed for Random -2275.639 ops/s -Iteration 1: 3478.249 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 3478.249 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 27.27% complete, ETA 00:04:42 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2481993213250 as seed for Random -3374.811 ops/s -Iteration 1: 5258.576 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 5258.576 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:04:33 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2495065245009 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -2822.096 ops/s -Iteration 1: 5566.381 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 5566.381 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:04:23 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2508109703359 as seed for Random -4557.930 ops/s -Iteration 1: 5464.613 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 5464.613 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 36.36% complete, ETA 00:04:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2521178064744 as seed for Random -2278.104 ops/s -Iteration 1: 3125.448 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 3125.448 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon - -# Run progress: 39.39% complete, ETA 00:04:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2534213279940 as seed for Random -531.011 ops/s -Iteration 1: 942.826 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 942.826 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:03:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2547288847731 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -1479.392 ops/s -Iteration 1: 4125.987 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 4125.987 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart - -# Run progress: 45.45% complete, ETA 00:03:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2560372302709 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) -WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -3413.998 ops/s -Iteration 1: 4085.147 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 4085.147 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare - -# Run progress: 48.48% complete, ETA 00:03:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2573458939349 as seed for Random -2558.356 ops/s -Iteration 1: 4863.848 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 4863.848 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi - -# Run progress: 51.52% complete, ETA 00:03:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2586551531610 as seed for Random -2418.957 ops/s -Iteration 1: 3500.018 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 3500.018 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson - -# Run progress: 54.55% complete, ETA 00:03:06 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2599665740377 as seed for Random -361.229 ops/s -Iteration 1: 767.099 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 767.099 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson - -# Run progress: 57.58% complete, ETA 00:02:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2612811654647 as seed for Random -910.213 ops/s -Iteration 1: 3254.453 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 3254.453 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson - -# Run progress: 60.61% complete, ETA 00:02:42 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2625916990350 as seed for Random -595.506 ops/s -Iteration 1: 748.266 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 748.266 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson - -# Run progress: 63.64% complete, ETA 00:02:30 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2639107689550 as seed for Random -2368.666 ops/s -Iteration 1: 4816.213 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 4816.213 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson - -# Run progress: 66.67% complete, ETA 00:02:18 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2652191754242 as seed for Random -1243.635 ops/s -Iteration 1: 2390.300 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 2390.300 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio - -# Run progress: 69.70% complete, ETA 00:02:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2665250276289 as seed for Random -297.419 ops/s -Iteration 1: 1019.843 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 1019.843 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple - -# Run progress: 72.73% complete, ETA 00:01:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2678435443932 as seed for Random -726.203 ops/s -Iteration 1: 1444.933 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 1444.933 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson - -# Run progress: 75.76% complete, ETA 00:01:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2691572811066 as seed for Random -1509.546 ops/s -Iteration 1: 2249.448 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 2249.448 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson - -# Run progress: 78.79% complete, ETA 00:01:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2704652560190 as seed for Random -1252.485 ops/s -Iteration 1: 1668.042 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 1668.042 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi - -# Run progress: 81.82% complete, ETA 00:01:15 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2717697613969 as seed for Random -937.657 ops/s -Iteration 1: 2883.018 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 2883.018 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson - -# Run progress: 84.85% complete, ETA 00:01:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2730783612519 as seed for Random -2024.627 ops/s -Iteration 1: 2772.297 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 2772.297 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson - -# Run progress: 87.88% complete, ETA 00:00:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2743828019853 as seed for Random -580.004 ops/s -Iteration 1: 1064.635 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 1064.635 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson - -# Run progress: 90.91% complete, ETA 00:00:38 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2756962711410 as seed for Random -536.950 ops/s -Iteration 1: 910.533 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 910.533 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry - -# Run progress: 93.94% complete, ETA 00:00:25 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2770050541536 as seed for Random -1915.475 ops/s -Iteration 1: 3191.655 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 3191.655 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java - -# Run progress: 96.97% complete, ETA 00:00:12 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2783156068117 as seed for Random -1488.492 ops/s -Iteration 1: 2520.526 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 2520.526 ops/s - - -# Run complete. Total time: 00:07:00 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 5721.850 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 4646.396 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 8106.421 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 6939.056 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 3546.827 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 750.017 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 3719.107 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 3478.249 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 5258.576 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 5566.381 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 5464.613 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 3125.448 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 942.826 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 4125.987 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 4085.147 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 4863.848 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 3500.018 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 767.099 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 3254.453 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 748.266 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 4816.213 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 2390.300 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 1019.843 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 1444.933 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 2249.448 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 1668.042 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 2883.018 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 2772.297 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 1064.635 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 910.533 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 3191.655 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 2520.526 ops/s diff --git a/output/users-deser-1-1000.txt b/output/users-deser-1-1000.txt deleted file mode 100644 index 0b4d092..0000000 --- a/output/users-deser-1-1000.txt +++ /dev/null @@ -1,1123 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:06:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3232913171674 as seed for Random -548.799 ops/s -Iteration 1: 636.684 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb": - 636.684 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson - -# Run progress: 3.03% complete, ETA 00:07:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3246058871590 as seed for Random -222.700 ops/s -Iteration 1: 469.534 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.avajejsonb_jackson": - 469.534 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.boon - -# Run progress: 6.06% complete, ETA 00:06:49 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3259247156401 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.ExceptionInInitializerError - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.primitive.Chr.chars(Chr.java:70) - at org.boon.json.implementation.JsonParserCharArray.(JsonParserCharArray.java:275) - ... 17 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_thrpt_jmhStub(Deserialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.json.implementation.JsonParserLax - at org.boon.json.JsonMappingParser.(JsonMappingParser.java:85) - at org.boon.json.JsonParserFactory.create(JsonParserFactory.java:228) - at org.boon.json.implementation.ObjectMapperImpl.readValue(ObjectMapperImpl.java:78) - at com.github.fabienrenaud.jjb.databind.Deserialization.boon(Deserialization.java:73) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Deserialization_boon_jmhTest.boon_Throughput(Deserialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - - - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson - -# Run progress: 9.09% complete, ETA 00:04:34 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3260284844751 as seed for Random -553.466 ops/s -Iteration 1: 742.734 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson": - 742.734 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:04:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3273427268828 as seed for Random -597.241 ops/s -Iteration 1: 689.909 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.dsljson_reflection": - 689.909 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.fastjson - -# Run progress: 15.15% complete, ETA 00:05:01 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3286582247144 as seed for Random -163.655 ops/s -Iteration 1: 205.276 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.fastjson": - 205.276 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.flexjson - -# Run progress: 18.18% complete, ETA 00:05:02 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3299964249652 as seed for Random -23.085 ops/s -Iteration 1: 60.370 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.flexjson": - 60.370 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.genson - -# Run progress: 21.21% complete, ETA 00:05:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3313853631068 as seed for Random -277.527 ops/s -Iteration 1: 329.230 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.genson": - 329.230 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.gson - -# Run progress: 24.24% complete, ETA 00:04:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3327173463119 as seed for Random -278.824 ops/s -Iteration 1: 339.702 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.gson": - 339.702 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson - -# Run progress: 27.27% complete, ETA 00:04:47 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3340450828126 as seed for Random -377.775 ops/s -Iteration 1: 496.545 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson": - 496.545 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:04:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3353704663902 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -406.588 ops/s -Iteration 1: 545.812 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_afterburner": - 545.812 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:04:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3366838051157 as seed for Random -421.634 ops/s -Iteration 1: 535.458 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jackson_blackbird": - 535.458 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jodd - -# Run progress: 36.36% complete, ETA 00:04:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3380101875634 as seed for Random -162.553 ops/s -Iteration 1: 211.217 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jodd": - 211.217 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.johnzon - -# Run progress: 39.39% complete, ETA 00:04:06 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3393351270028 as seed for Random -21.761 ops/s -Iteration 1: 70.749 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.johnzon": - 70.749 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:03:57 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3408138308222 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -310.700 ops/s -Iteration 1: 667.311 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsoniter": - 667.311 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart - -# Run progress: 45.45% complete, ETA 00:03:46 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3421275211138 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) -WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -330.470 ops/s -Iteration 1: 413.348 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.jsonsmart": - 413.348 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.logansquare - -# Run progress: 48.48% complete, ETA 00:03:34 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3434439706955 as seed for Random -322.186 ops/s -Iteration 1: 501.385 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.logansquare": - 501.385 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.moshi - -# Run progress: 51.52% complete, ETA 00:03:22 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3447657540844 as seed for Random -226.988 ops/s -Iteration 1: 320.888 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.moshi": - 320.888 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Deserialization.yasson - -# Run progress: 54.55% complete, ETA 00:03:10 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3460963419576 as seed for Random -11.597 ops/s -Iteration 1: 57.747 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Deserialization.yasson": - 57.747 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.genson - -# Run progress: 57.58% complete, ETA 00:02:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3475610073221 as seed for Random -52.272 ops/s -Iteration 1: 281.293 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.genson": - 281.293 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.gson - -# Run progress: 60.61% complete, ETA 00:02:46 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3488968182298 as seed for Random -235.887 ops/s -Iteration 1: 344.899 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.gson": - 344.899 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jackson - -# Run progress: 63.64% complete, ETA 00:02:33 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3502274280448 as seed for Random -102.010 ops/s -Iteration 1: 459.819 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jackson": - 459.819 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson - -# Run progress: 66.67% complete, ETA 00:02:21 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3515628278426 as seed for Random -90.234 ops/s -Iteration 1: 231.583 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.javaxjson": - 231.583 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonio - -# Run progress: 69.70% complete, ETA 00:02:08 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3528997197706 as seed for Random -54.259 ops/s -Iteration 1: 96.243 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonio": - 96.243 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple - -# Run progress: 72.73% complete, ETA 00:01:56 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3542585198052 as seed for Random -81.487 ops/s -Iteration 1: 141.042 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.jsonsimple": - 141.042 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson - -# Run progress: 75.76% complete, ETA 00:01:43 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3555973781293 as seed for Random -110.805 ops/s -Iteration 1: 218.314 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.minimaljson": - 218.314 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.mjson - -# Run progress: 78.79% complete, ETA 00:01:30 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3569286223622 as seed for Random -57.534 ops/s -Iteration 1: 94.762 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.mjson": - 94.762 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.moshi - -# Run progress: 81.82% complete, ETA 00:01:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3583377102071 as seed for Random -149.223 ops/s -Iteration 1: 278.262 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.moshi": - 278.262 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.nanojson - -# Run progress: 84.85% complete, ETA 00:01:04 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3596676615972 as seed for Random -168.834 ops/s -Iteration 1: 260.536 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.nanojson": - 260.536 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.orgjson - -# Run progress: 87.88% complete, ETA 00:00:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3609986967217 as seed for Random -95.633 ops/s -Iteration 1: 125.066 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.orgjson": - 125.066 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.purejson - -# Run progress: 90.91% complete, ETA 00:00:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3623546771684 as seed for Random -15.066 ops/s -Iteration 1: 31.962 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.purejson": - 31.962 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.tapestry - -# Run progress: 93.94% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3639727621369 as seed for Random -191.681 ops/s -Iteration 1: 278.669 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.tapestry": - 278.669 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java - -# Run progress: 96.97% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3653096266320 as seed for Random -142.490 ops/s -Iteration 1: 210.998 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Deserialization.underscore_java": - 210.998 ops/s - - -# Run complete. Total time: 00:07:13 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Deserialization.avajejsonb thrpt 636.684 ops/s -c.g.f.j.databind.Deserialization.avajejsonb_jackson thrpt 469.534 ops/s -c.g.f.j.databind.Deserialization.dsljson thrpt 742.734 ops/s -c.g.f.j.databind.Deserialization.dsljson_reflection thrpt 689.909 ops/s -c.g.f.j.databind.Deserialization.fastjson thrpt 205.276 ops/s -c.g.f.j.databind.Deserialization.flexjson thrpt 60.370 ops/s -c.g.f.j.databind.Deserialization.genson thrpt 329.230 ops/s -c.g.f.j.databind.Deserialization.gson thrpt 339.702 ops/s -c.g.f.j.databind.Deserialization.jackson thrpt 496.545 ops/s -c.g.f.j.databind.Deserialization.jackson_afterburner thrpt 545.812 ops/s -c.g.f.j.databind.Deserialization.jackson_blackbird thrpt 535.458 ops/s -c.g.f.j.databind.Deserialization.jodd thrpt 211.217 ops/s -c.g.f.j.databind.Deserialization.johnzon thrpt 70.749 ops/s -c.g.f.j.databind.Deserialization.jsoniter thrpt 667.311 ops/s -c.g.f.j.databind.Deserialization.jsonsmart thrpt 413.348 ops/s -c.g.f.j.databind.Deserialization.logansquare thrpt 501.385 ops/s -c.g.f.j.databind.Deserialization.moshi thrpt 320.888 ops/s -c.g.f.j.databind.Deserialization.yasson thrpt 57.747 ops/s -c.g.f.j.stream.Deserialization.genson thrpt 281.293 ops/s -c.g.f.j.stream.Deserialization.gson thrpt 344.899 ops/s -c.g.f.j.stream.Deserialization.jackson thrpt 459.819 ops/s -c.g.f.j.stream.Deserialization.javaxjson thrpt 231.583 ops/s -c.g.f.j.stream.Deserialization.jsonio thrpt 96.243 ops/s -c.g.f.j.stream.Deserialization.jsonsimple thrpt 141.042 ops/s -c.g.f.j.stream.Deserialization.minimaljson thrpt 218.314 ops/s -c.g.f.j.stream.Deserialization.mjson thrpt 94.762 ops/s -c.g.f.j.stream.Deserialization.moshi thrpt 278.262 ops/s -c.g.f.j.stream.Deserialization.nanojson thrpt 260.536 ops/s -c.g.f.j.stream.Deserialization.orgjson thrpt 125.066 ops/s -c.g.f.j.stream.Deserialization.purejson thrpt 31.962 ops/s -c.g.f.j.stream.Deserialization.tapestry thrpt 278.669 ops/s -c.g.f.j.stream.Deserialization.underscore_java thrpt 210.998 ops/s diff --git a/output/users-ser-1-1.txt b/output/users-ser-1-1.txt deleted file mode 100644 index f3c18d5..0000000 --- a/output/users-ser-1-1.txt +++ /dev/null @@ -1,1142 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:06:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=277470189257 as seed for Random -546071.559 ops/s -Iteration 1: 618540.880 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 618540.880 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson - -# Run progress: 3.03% complete, ETA 00:06:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=290470390894 as seed for Random -400120.059 ops/s -Iteration 1: 476041.588 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 476041.588 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon - -# Run progress: 6.06% complete, ETA 00:06:45 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=303512321759 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - - - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 9.09% complete, ETA 00:04:30 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=304418211550 as seed for Random -660422.182 ops/s -Iteration 1: 731835.852 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 731835.852 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:04:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=317462102192 as seed for Random -628898.291 ops/s -Iteration 1: 682479.314 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 682479.314 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 15.15% complete, ETA 00:04:57 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=330508619396 as seed for Random -328439.256 ops/s -Iteration 1: 721483.602 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 721483.602 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 18.18% complete, ETA 00:04:57 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=343537605460 as seed for Random -1988.433 ops/s -Iteration 1: 1223.377 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 1223.377 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 21.21% complete, ETA 00:04:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=356592046743 as seed for Random -248461.906 ops/s -Iteration 1: 299061.741 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 299061.741 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 24.24% complete, ETA 00:04:48 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=369654319719 as seed for Random -180002.479 ops/s -Iteration 1: 211933.621 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 211933.621 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 27.27% complete, ETA 00:04:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=382653256965 as seed for Random -417197.159 ops/s -Iteration 1: 502201.133 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 502201.133 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:04:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=395734166383 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -471935.552 ops/s -Iteration 1: 563885.382 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 563885.382 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:04:22 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=408714750430 as seed for Random -383289.524 ops/s -Iteration 1: 537909.161 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 537909.161 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 36.36% complete, ETA 00:04:12 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=421843508085 as seed for Random -98534.948 ops/s -Iteration 1: 144714.488 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 144714.488 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon - -# Run progress: 39.39% complete, ETA 00:04:02 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=434871182648 as seed for Random -165759.115 ops/s -Iteration 1: 210190.728 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 210190.728 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:03:51 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=447941058744 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -487369.259 ops/s -Iteration 1: 524670.994 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 524670.994 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart - -# Run progress: 45.45% complete, ETA 00:03:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=460989598181 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) -WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -177683.999 ops/s -Iteration 1: 214944.394 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 214944.394 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare - -# Run progress: 48.48% complete, ETA 00:03:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=474041741357 as seed for Random -408414.226 ops/s -Iteration 1: 537809.803 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 537809.803 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi - -# Run progress: 51.52% complete, ETA 00:03:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=487086746071 as seed for Random -200573.419 ops/s -Iteration 1: 280821.935 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 280821.935 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson - -# Run progress: 54.55% complete, ETA 00:03:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=500120420832 as seed for Random -64450.653 ops/s -Iteration 1: 157905.070 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 157905.070 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson - -# Run progress: 57.58% complete, ETA 00:02:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=513177474501 as seed for Random -228366.464 ops/s -Iteration 1: 282985.582 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 282985.582 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson - -# Run progress: 60.61% complete, ETA 00:02:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=526248221665 as seed for Random -121977.995 ops/s -Iteration 1: 152833.872 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 152833.872 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson - -# Run progress: 63.64% complete, ETA 00:02:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=539404771971 as seed for Random -385143.902 ops/s -Iteration 1: 523895.244 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 523895.244 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson - -# Run progress: 66.67% complete, ETA 00:02:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=552441959350 as seed for Random -117797.715 ops/s -Iteration 1: 317530.675 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 317530.675 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio - -# Run progress: 69.70% complete, ETA 00:02:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=565568270555 as seed for Random -56767.752 ops/s -Iteration 1: 98127.430 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 98127.430 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple - -# Run progress: 72.73% complete, ETA 00:01:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=578602500599 as seed for Random -57611.061 ops/s -Iteration 1: 95302.409 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 95302.409 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson - -# Run progress: 75.76% complete, ETA 00:01:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=591608886861 as seed for Random -162260.752 ops/s -Iteration 1: 220529.523 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 220529.523 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson - -# Run progress: 78.79% complete, ETA 00:01:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=604820915948 as seed for Random -51634.119 ops/s -Iteration 1: 101007.836 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 101007.836 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi - -# Run progress: 81.82% complete, ETA 00:01:15 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=617904937756 as seed for Random -236760.340 ops/s -Iteration 1: 275680.383 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 275680.383 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson - -# Run progress: 84.85% complete, ETA 00:01:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=630933861505 as seed for Random -237873.144 ops/s -Iteration 1: 271194.549 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 271194.549 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson - -# Run progress: 87.88% complete, ETA 00:00:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=644064375754 as seed for Random -83090.242 ops/s -Iteration 1: 120632.928 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 120632.928 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson - -# Run progress: 90.91% complete, ETA 00:00:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=657126280357 as seed for Random -62091.316 ops/s -Iteration 1: 96754.915 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 96754.915 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry - -# Run progress: 93.94% complete, ETA 00:00:25 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=670131816839 as seed for Random -20221.654 ops/s -Iteration 1: 86349.989 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 86349.989 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java - -# Run progress: 96.97% complete, ETA 00:00:12 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=683271165633 as seed for Random -113249.028 ops/s -Iteration 1: 128809.922 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 128809.922 ops/s - - -# Run complete. Total time: 00:06:58 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 618540.880 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 476041.588 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 731835.852 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 682479.314 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 721483.602 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 1223.377 ops/s -c.g.f.j.databind.Serialization.genson thrpt 299061.741 ops/s -c.g.f.j.databind.Serialization.gson thrpt 211933.621 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 502201.133 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 563885.382 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 537909.161 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 144714.488 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 210190.728 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 524670.994 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 214944.394 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 537809.803 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 280821.935 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 157905.070 ops/s -c.g.f.j.stream.Serialization.genson thrpt 282985.582 ops/s -c.g.f.j.stream.Serialization.gson thrpt 152833.872 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 523895.244 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 317530.675 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 98127.430 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 95302.409 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 220529.523 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 101007.836 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 275680.383 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 271194.549 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 120632.928 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 96754.915 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 86349.989 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 128809.922 ops/s diff --git a/output/users-ser-1-10.txt b/output/users-ser-1-10.txt deleted file mode 100644 index 5d46f58..0000000 --- a/output/users-ser-1-10.txt +++ /dev/null @@ -1,1142 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:06:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1116158472654 as seed for Random -55417.681 ops/s -Iteration 1: 75129.107 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 75129.107 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson - -# Run progress: 3.03% complete, ETA 00:06:59 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1129173149306 as seed for Random -51707.323 ops/s -Iteration 1: 61379.511 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 61379.511 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon - -# Run progress: 6.06% complete, ETA 00:06:45 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1142301495799 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - - - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 9.09% complete, ETA 00:04:31 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1143242061684 as seed for Random -78470.344 ops/s -Iteration 1: 86124.288 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 86124.288 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:04:51 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1156243312817 as seed for Random -71861.214 ops/s -Iteration 1: 80525.535 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 80525.535 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 15.15% complete, ETA 00:04:57 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1169314041556 as seed for Random -39745.347 ops/s -Iteration 1: 52304.474 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 52304.474 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 18.18% complete, ETA 00:04:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1182334114399 as seed for Random -463.760 ops/s -Iteration 1: 362.964 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 362.964 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 21.21% complete, ETA 00:04:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1195497972579 as seed for Random -28709.305 ops/s -Iteration 1: 43801.520 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 43801.520 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 24.24% complete, ETA 00:04:48 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1208518326313 as seed for Random -14408.593 ops/s -Iteration 1: 21765.986 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 21765.986 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 27.27% complete, ETA 00:04:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1221557053960 as seed for Random -57954.468 ops/s -Iteration 1: 64654.708 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 64654.708 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:04:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1234671945299 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -55467.811 ops/s -Iteration 1: 61551.179 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 61551.179 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:04:23 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1247761772363 as seed for Random -62491.093 ops/s -Iteration 1: 69742.441 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 69742.441 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 36.36% complete, ETA 00:04:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1260809474328 as seed for Random -9776.580 ops/s -Iteration 1: 11515.231 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 11515.231 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon - -# Run progress: 39.39% complete, ETA 00:04:02 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1273916728303 as seed for Random -20645.109 ops/s -Iteration 1: 26624.357 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 26624.357 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:03:51 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1286942027283 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -54185.463 ops/s -Iteration 1: 65546.201 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 65546.201 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart - -# Run progress: 45.45% complete, ETA 00:03:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1299989137399 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) -WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -21141.552 ops/s -Iteration 1: 23089.100 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 23089.100 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare - -# Run progress: 48.48% complete, ETA 00:03:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1313036915001 as seed for Random -29669.001 ops/s -Iteration 1: 66017.067 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 66017.067 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi - -# Run progress: 51.52% complete, ETA 00:03:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1326069430757 as seed for Random -25374.334 ops/s -Iteration 1: 37339.189 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 37339.189 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson - -# Run progress: 54.55% complete, ETA 00:03:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1339070575405 as seed for Random -12883.388 ops/s -Iteration 1: 24796.630 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 24796.630 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson - -# Run progress: 57.58% complete, ETA 00:02:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1352123697385 as seed for Random -24826.948 ops/s -Iteration 1: 40505.145 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 40505.145 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson - -# Run progress: 60.61% complete, ETA 00:02:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1365252551967 as seed for Random -13054.673 ops/s -Iteration 1: 15098.541 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 15098.541 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson - -# Run progress: 63.64% complete, ETA 00:02:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1378334961894 as seed for Random -45074.431 ops/s -Iteration 1: 66059.450 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 66059.450 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson - -# Run progress: 66.67% complete, ETA 00:02:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1391358491409 as seed for Random -25528.420 ops/s -Iteration 1: 48382.082 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 48382.082 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio - -# Run progress: 69.70% complete, ETA 00:02:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1404430159725 as seed for Random -3240.263 ops/s -Iteration 1: 10821.547 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 10821.547 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple - -# Run progress: 72.73% complete, ETA 00:01:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1417492424814 as seed for Random -6843.124 ops/s -Iteration 1: 8429.967 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 8429.967 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson - -# Run progress: 75.76% complete, ETA 00:01:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1430527601328 as seed for Random -10184.369 ops/s -Iteration 1: 22192.560 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 22192.560 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson - -# Run progress: 78.79% complete, ETA 00:01:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1443529537309 as seed for Random -3146.634 ops/s -Iteration 1: 9593.021 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 9593.021 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi - -# Run progress: 81.82% complete, ETA 00:01:15 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1456576637066 as seed for Random -17590.947 ops/s -Iteration 1: 28459.766 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 28459.766 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson - -# Run progress: 84.85% complete, ETA 00:01:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1469708460005 as seed for Random -17968.472 ops/s -Iteration 1: 24540.088 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 24540.088 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson - -# Run progress: 87.88% complete, ETA 00:00:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1482774515615 as seed for Random -4509.271 ops/s -Iteration 1: 10216.514 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 10216.514 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson - -# Run progress: 90.91% complete, ETA 00:00:37 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1495831123847 as seed for Random -5657.217 ops/s -Iteration 1: 8769.869 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 8769.869 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry - -# Run progress: 93.94% complete, ETA 00:00:25 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1508901377713 as seed for Random -3133.520 ops/s -Iteration 1: 8054.504 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 8054.504 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java - -# Run progress: 96.97% complete, ETA 00:00:12 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1521951614042 as seed for Random -6789.976 ops/s -Iteration 1: 9938.903 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 9938.903 ops/s - - -# Run complete. Total time: 00:06:58 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 75129.107 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 61379.511 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 86124.288 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 80525.535 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 52304.474 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 362.964 ops/s -c.g.f.j.databind.Serialization.genson thrpt 43801.520 ops/s -c.g.f.j.databind.Serialization.gson thrpt 21765.986 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 64654.708 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 61551.179 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 69742.441 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 11515.231 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 26624.357 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 65546.201 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 23089.100 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 66017.067 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 37339.189 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 24796.630 ops/s -c.g.f.j.stream.Serialization.genson thrpt 40505.145 ops/s -c.g.f.j.stream.Serialization.gson thrpt 15098.541 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 66059.450 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 48382.082 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 10821.547 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 8429.967 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 22192.560 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 9593.021 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 28459.766 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 24540.088 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 10216.514 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 8769.869 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 8054.504 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 9938.903 ops/s diff --git a/output/users-ser-1-100.txt b/output/users-ser-1-100.txt deleted file mode 100644 index 79465be..0000000 --- a/output/users-ser-1-100.txt +++ /dev/null @@ -1,1142 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:06:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1955447226312 as seed for Random -5590.483 ops/s -Iteration 1: 7764.987 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 7764.987 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson - -# Run progress: 3.03% complete, ETA 00:07:00 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1968555611669 as seed for Random -5529.652 ops/s -Iteration 1: 6706.371 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 6706.371 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon - -# Run progress: 6.06% complete, ETA 00:06:47 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1981666512288 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 20 more - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - - - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 9.09% complete, ETA 00:04:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1982605042858 as seed for Random -6022.321 ops/s -Iteration 1: 8547.919 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 8547.919 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:04:51 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=1995648151610 as seed for Random -7797.730 ops/s -Iteration 1: 8199.630 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 8199.630 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 15.15% complete, ETA 00:04:58 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2008731172854 as seed for Random -2820.589 ops/s -Iteration 1: 3353.708 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 3353.708 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 18.18% complete, ETA 00:04:59 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2021859939316 as seed for Random -102.942 ops/s -Iteration 1: 149.340 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 149.340 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 21.21% complete, ETA 00:04:56 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2035187649816 as seed for Random -3607.581 ops/s -Iteration 1: 4579.940 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 4579.940 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 24.24% complete, ETA 00:04:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2048342099318 as seed for Random -1665.891 ops/s -Iteration 1: 2740.762 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 2740.762 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 27.27% complete, ETA 00:04:42 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2061399749888 as seed for Random -5286.523 ops/s -Iteration 1: 6769.994 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 6769.994 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:04:33 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2074479021344 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -5574.902 ops/s -Iteration 1: 6576.650 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 6576.650 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:04:24 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2087509415290 as seed for Random -5248.663 ops/s -Iteration 1: 5919.675 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 5919.675 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 36.36% complete, ETA 00:04:14 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2100537671341 as seed for Random -887.403 ops/s -Iteration 1: 1317.697 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 1317.697 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon - -# Run progress: 39.39% complete, ETA 00:04:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2113614778773 as seed for Random -1560.752 ops/s -Iteration 1: 2430.929 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 2430.929 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:03:52 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2126724524787 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -5957.098 ops/s -Iteration 1: 6669.048 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 6669.048 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart - -# Run progress: 45.45% complete, ETA 00:03:41 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2139761249700 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) -WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -2068.904 ops/s -Iteration 1: 2252.749 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 2252.749 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare - -# Run progress: 48.48% complete, ETA 00:03:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2152818883102 as seed for Random -4804.581 ops/s -Iteration 1: 6197.620 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 6197.620 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi - -# Run progress: 51.52% complete, ETA 00:03:18 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2165885240262 as seed for Random -2633.874 ops/s -Iteration 1: 3253.131 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 3253.131 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson - -# Run progress: 54.55% complete, ETA 00:03:06 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2178984744020 as seed for Random -1310.193 ops/s -Iteration 1: 2383.485 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 2383.485 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson - -# Run progress: 57.58% complete, ETA 00:02:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2192040439099 as seed for Random -2292.444 ops/s -Iteration 1: 4447.706 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 4447.706 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson - -# Run progress: 60.61% complete, ETA 00:02:42 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2205126937787 as seed for Random -1293.546 ops/s -Iteration 1: 1486.168 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 1486.168 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson - -# Run progress: 63.64% complete, ETA 00:02:30 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2218269407770 as seed for Random -5586.780 ops/s -Iteration 1: 6975.520 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 6975.520 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson - -# Run progress: 66.67% complete, ETA 00:02:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2231380700208 as seed for Random -3247.544 ops/s -Iteration 1: 4617.990 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 4617.990 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio - -# Run progress: 69.70% complete, ETA 00:02:05 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2244412815352 as seed for Random -789.924 ops/s -Iteration 1: 1397.580 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 1397.580 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple - -# Run progress: 72.73% complete, ETA 00:01:53 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2257503827735 as seed for Random -567.709 ops/s -Iteration 1: 850.621 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 850.621 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson - -# Run progress: 75.76% complete, ETA 00:01:40 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2270553704528 as seed for Random -1108.309 ops/s -Iteration 1: 2200.676 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 2200.676 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson - -# Run progress: 78.79% complete, ETA 00:01:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2283668740047 as seed for Random -212.415 ops/s -Iteration 1: 270.578 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 270.578 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi - -# Run progress: 81.82% complete, ETA 00:01:15 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2296870842255 as seed for Random -2264.962 ops/s -Iteration 1: 3431.043 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 3431.043 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson - -# Run progress: 84.85% complete, ETA 00:01:03 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2309932489897 as seed for Random -1620.585 ops/s -Iteration 1: 2368.346 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 2368.346 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson - -# Run progress: 87.88% complete, ETA 00:00:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2323050032896 as seed for Random -784.297 ops/s -Iteration 1: 1009.980 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 1009.980 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson - -# Run progress: 90.91% complete, ETA 00:00:38 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2336147103445 as seed for Random -558.962 ops/s -Iteration 1: 681.741 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 681.741 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry - -# Run progress: 93.94% complete, ETA 00:00:25 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2349209952020 as seed for Random -387.793 ops/s -Iteration 1: 609.070 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 609.070 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java - -# Run progress: 96.97% complete, ETA 00:00:12 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2362488225499 as seed for Random -816.188 ops/s -Iteration 1: 1043.138 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 1043.138 ops/s - - -# Run complete. Total time: 00:07:00 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 7764.987 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 6706.371 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 8547.919 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 8199.630 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 3353.708 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 149.340 ops/s -c.g.f.j.databind.Serialization.genson thrpt 4579.940 ops/s -c.g.f.j.databind.Serialization.gson thrpt 2740.762 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 6769.994 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 6576.650 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 5919.675 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 1317.697 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 2430.929 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 6669.048 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 2252.749 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 6197.620 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 3253.131 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 2383.485 ops/s -c.g.f.j.stream.Serialization.genson thrpt 4447.706 ops/s -c.g.f.j.stream.Serialization.gson thrpt 1486.168 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 6975.520 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 4617.990 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 1397.580 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 850.621 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 2200.676 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 270.578 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 3431.043 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 2368.346 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 1009.980 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 681.741 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 609.070 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 1043.138 ops/s diff --git a/output/users-ser-1-1000.txt b/output/users-ser-1-1000.txt deleted file mode 100644 index 853babc..0000000 --- a/output/users-ser-1-1000.txt +++ /dev/null @@ -1,1142 +0,0 @@ -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb - -# Run progress: 0.00% complete, ETA 00:06:36 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2796916734519 as seed for Random -647.248 ops/s -Iteration 1: 725.793 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb": - 725.793 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson - -# Run progress: 3.03% complete, ETA 00:07:02 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2810080023817 as seed for Random -560.765 ops/s -Iteration 1: 651.291 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.avajejsonb_jackson": - 651.291 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.boon - -# Run progress: 6.06% complete, ETA 00:06:50 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2823372493085 as seed for Random - - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_thrpt_jmhStub(Serialization_boon_jmhTest.java:119) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:83) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.NoClassDefFoundError: Could not initialize class org.boon.core.reflection.Reflection - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) - -java.lang.ExceptionInInitializerError - at org.boon.core.reflection.Reflection.(Reflection.java:122) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeInstance(JsonSimpleSerializerImpl.java:601) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serializeObject(JsonSimpleSerializerImpl.java:564) - at org.boon.json.serializers.impl.JsonSimpleSerializerImpl.serialize(JsonSimpleSerializerImpl.java:152) - at org.boon.json.implementation.ObjectMapperImpl.writeValue(ObjectMapperImpl.java:217) - at com.github.fabienrenaud.jjb.databind.Serialization.boon(Serialization.java:89) - at com.github.fabienrenaud.jjb.databind.jmh_generated.Serialization_boon_jmhTest.boon_Throughput(Serialization_boon_jmhTest.java:78) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) - at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) - at java.base/java.lang.reflect.Method.invoke(Method.java:566) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475) - at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) - at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) - at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) - at java.base/java.lang.Thread.run(Thread.java:829) -Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap') - at org.boon.core.reflection.FastStringUtils$StringImplementation$1.toCharArray(FastStringUtils.java:92) - at org.boon.core.reflection.FastStringUtils.toCharArray(FastStringUtils.java:175) - at org.boon.Str.underBarCase(Str.java:538) - at org.boon.core.Sys.sysProp(Sys.java:341) - at org.boon.core.timer.TimeKeeperBasic.(TimeKeeperBasic.java:52) - at org.boon.core.Sys.(Sys.java:182) - ... 19 more - - - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson - -# Run progress: 9.09% complete, ETA 00:04:35 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2824394933629 as seed for Random -620.504 ops/s -Iteration 1: 829.417 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson": - 829.417 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection - -# Run progress: 12.12% complete, ETA 00:04:54 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2837529215196 as seed for Random -627.346 ops/s -Iteration 1: 682.035 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.dsljson_reflection": - 682.035 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.fastjson - -# Run progress: 15.15% complete, ETA 00:05:01 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2850721865274 as seed for Random -189.946 ops/s -Iteration 1: 222.252 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.fastjson": - 222.252 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.flexjson - -# Run progress: 18.18% complete, ETA 00:05:02 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2864048412595 as seed for Random -18.776 ops/s -Iteration 1: 40.673 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.flexjson": - 40.673 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.genson - -# Run progress: 21.21% complete, ETA 00:05:02 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2878325452858 as seed for Random -330.671 ops/s -Iteration 1: 486.659 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.genson": - 486.659 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.gson - -# Run progress: 24.24% complete, ETA 00:04:55 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2891556213015 as seed for Random -209.037 ops/s -Iteration 1: 228.216 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.gson": - 228.216 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson - -# Run progress: 27.27% complete, ETA 00:04:47 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2904826869248 as seed for Random -573.725 ops/s -Iteration 1: 672.722 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson": - 672.722 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner - -# Run progress: 30.30% complete, ETA 00:04:38 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2918039631716 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) -WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -500.148 ops/s -Iteration 1: 570.926 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_afterburner": - 570.926 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird - -# Run progress: 33.33% complete, ETA 00:04:28 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2931214050274 as seed for Random -570.553 ops/s -Iteration 1: 638.670 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jackson_blackbird": - 638.670 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jodd - -# Run progress: 36.36% complete, ETA 00:04:18 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2944346226893 as seed for Random -80.752 ops/s -Iteration 1: 133.432 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jodd": - 133.432 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.johnzon - -# Run progress: 39.39% complete, ETA 00:04:07 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2957761506387 as seed for Random -211.833 ops/s -Iteration 1: 233.774 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.johnzon": - 233.774 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsoniter - -# Run progress: 42.42% complete, ETA 00:03:56 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2971168800966 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by javassist.util.proxy.SecurityActions (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) -WARNING: Please consider reporting this to the maintainers of javassist.util.proxy.SecurityActions -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -614.310 ops/s -Iteration 1: 681.546 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsoniter": - 681.546 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart - -# Run progress: 45.45% complete, ETA 00:03:44 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2984316063953 as seed for Random -WARNING: An illegal reflective access operation has occurred -WARNING: Illegal reflective access by net.minidev.asm.DynamicClassLoader (file:/home/runner/work/java-json-benchmark/java-json-benchmark/build/libs/app.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) -WARNING: Please consider reporting this to the maintainers of net.minidev.asm.DynamicClassLoader -WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations -WARNING: All illegal access operations will be denied in a future release -164.663 ops/s -Iteration 1: 203.630 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.jsonsmart": - 203.630 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.logansquare - -# Run progress: 48.48% complete, ETA 00:03:33 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=2997598204030 as seed for Random -524.270 ops/s -Iteration 1: 670.383 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.logansquare": - 670.383 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.moshi - -# Run progress: 51.52% complete, ETA 00:03:21 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3010758249433 as seed for Random -279.681 ops/s -Iteration 1: 316.836 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.moshi": - 316.836 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.databind.Serialization.yasson - -# Run progress: 54.55% complete, ETA 00:03:09 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3023992619245 as seed for Random -145.556 ops/s -Iteration 1: 236.531 ops/s - - -Result "com.github.fabienrenaud.jjb.databind.Serialization.yasson": - 236.531 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.genson - -# Run progress: 57.58% complete, ETA 00:02:57 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3037260845268 as seed for Random -316.502 ops/s -Iteration 1: 403.367 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.genson": - 403.367 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.gson - -# Run progress: 60.61% complete, ETA 00:02:44 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3050535900211 as seed for Random -117.031 ops/s -Iteration 1: 143.572 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.gson": - 143.572 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jackson - -# Run progress: 63.64% complete, ETA 00:02:32 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3064072981340 as seed for Random -394.089 ops/s -Iteration 1: 521.780 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jackson": - 521.780 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.javaxjson - -# Run progress: 66.67% complete, ETA 00:02:20 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3077367719847 as seed for Random -416.776 ops/s -Iteration 1: 502.041 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.javaxjson": - 502.041 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonio - -# Run progress: 69.70% complete, ETA 00:02:07 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3090587327563 as seed for Random -107.496 ops/s -Iteration 1: 153.996 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonio": - 153.996 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple - -# Run progress: 72.73% complete, ETA 00:01:55 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3103979147132 as seed for Random -67.888 ops/s -Iteration 1: 77.167 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.jsonsimple": - 77.167 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.minimaljson - -# Run progress: 75.76% complete, ETA 00:01:42 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3117618384230 as seed for Random -143.736 ops/s -Iteration 1: 214.361 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.minimaljson": - 214.361 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.mjson - -# Run progress: 78.79% complete, ETA 00:01:29 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3130970746980 as seed for Random -25.685 ops/s -Iteration 1: 28.171 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.mjson": - 28.171 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.moshi - -# Run progress: 81.82% complete, ETA 00:01:17 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3145934117169 as seed for Random -226.581 ops/s -Iteration 1: 326.251 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.moshi": - 326.251 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.nanojson - -# Run progress: 84.85% complete, ETA 00:01:04 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3159194845961 as seed for Random -202.423 ops/s -Iteration 1: 245.874 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.nanojson": - 245.874 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.orgjson - -# Run progress: 87.88% complete, ETA 00:00:51 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3172600929692 as seed for Random -43.920 ops/s -Iteration 1: 53.044 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.orgjson": - 53.044 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.purejson - -# Run progress: 90.91% complete, ETA 00:00:39 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3186874015322 as seed for Random -12.023 ops/s -Iteration 1: 14.838 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.purejson": - 14.838 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.tapestry - -# Run progress: 93.94% complete, ETA 00:00:26 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3203567703426 as seed for Random -27.517 ops/s -Iteration 1: 31.735 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.tapestry": - 31.735 ops/s - - -# JMH version: 1.33 -# VM version: JDK 11.0.16.1, OpenJDK 64-Bit Server VM, 11.0.16.1+1 -# VM invoker: /usr/lib/jvm/temurin-11-jdk-amd64/bin/java -# VM options: -Xms2g -Xmx2g -# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect) -# Warmup: 1 iterations, 10 s each -# Measurement: 1 iterations, 2 s each -# Timeout: 10 min per iteration -# Threads: 16 threads, will synchronize iterations -# Benchmark mode: Throughput, ops/time -# Benchmark: com.github.fabienrenaud.jjb.stream.Serialization.underscore_java - -# Run progress: 96.97% complete, ETA 00:00:13 -# Fork: 1 of 1 -# Warmup Iteration 1: Using SEED=3218015648676 as seed for Random -47.839 ops/s -Iteration 1: 49.980 ops/s - - -Result "com.github.fabienrenaud.jjb.stream.Serialization.underscore_java": - 49.980 ops/s - - -# Run complete. Total time: 00:07:15 - -REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on -why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial -experiments, perform baseline and negative tests that provide experimental control, make sure -the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts. -Do not assume the numbers tell you what you want them to tell. - -Benchmark Mode Cnt Score Error Units -c.g.f.j.databind.Serialization.avajejsonb thrpt 725.793 ops/s -c.g.f.j.databind.Serialization.avajejsonb_jackson thrpt 651.291 ops/s -c.g.f.j.databind.Serialization.dsljson thrpt 829.417 ops/s -c.g.f.j.databind.Serialization.dsljson_reflection thrpt 682.035 ops/s -c.g.f.j.databind.Serialization.fastjson thrpt 222.252 ops/s -c.g.f.j.databind.Serialization.flexjson thrpt 40.673 ops/s -c.g.f.j.databind.Serialization.genson thrpt 486.659 ops/s -c.g.f.j.databind.Serialization.gson thrpt 228.216 ops/s -c.g.f.j.databind.Serialization.jackson thrpt 672.722 ops/s -c.g.f.j.databind.Serialization.jackson_afterburner thrpt 570.926 ops/s -c.g.f.j.databind.Serialization.jackson_blackbird thrpt 638.670 ops/s -c.g.f.j.databind.Serialization.jodd thrpt 133.432 ops/s -c.g.f.j.databind.Serialization.johnzon thrpt 233.774 ops/s -c.g.f.j.databind.Serialization.jsoniter thrpt 681.546 ops/s -c.g.f.j.databind.Serialization.jsonsmart thrpt 203.630 ops/s -c.g.f.j.databind.Serialization.logansquare thrpt 670.383 ops/s -c.g.f.j.databind.Serialization.moshi thrpt 316.836 ops/s -c.g.f.j.databind.Serialization.yasson thrpt 236.531 ops/s -c.g.f.j.stream.Serialization.genson thrpt 403.367 ops/s -c.g.f.j.stream.Serialization.gson thrpt 143.572 ops/s -c.g.f.j.stream.Serialization.jackson thrpt 521.780 ops/s -c.g.f.j.stream.Serialization.javaxjson thrpt 502.041 ops/s -c.g.f.j.stream.Serialization.jsonio thrpt 153.996 ops/s -c.g.f.j.stream.Serialization.jsonsimple thrpt 77.167 ops/s -c.g.f.j.stream.Serialization.minimaljson thrpt 214.361 ops/s -c.g.f.j.stream.Serialization.mjson thrpt 28.171 ops/s -c.g.f.j.stream.Serialization.moshi thrpt 326.251 ops/s -c.g.f.j.stream.Serialization.nanojson thrpt 245.874 ops/s -c.g.f.j.stream.Serialization.orgjson thrpt 53.044 ops/s -c.g.f.j.stream.Serialization.purejson thrpt 14.838 ops/s -c.g.f.j.stream.Serialization.tapestry thrpt 31.735 ops/s -c.g.f.j.stream.Serialization.underscore_java thrpt 49.980 ops/s From 8466ac8633fc8e74f2da0c59288b5f7cda9465ba Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 30 Oct 2022 15:17:28 +0000 Subject: [PATCH 29/42] #53 dependabot package ecosystem changed to gradle --- .github/dependabot.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index aca7b0b..d3bd5d9 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,6 +1,6 @@ version: 2 updates: - - package-ecosystem: maven + - package-ecosystem: gradle directory: "/" schedule: interval: daily From e34b997c69e0664c0803bcfb113f79ce6917a997 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:33:20 +0000 Subject: [PATCH 30/42] Bump com.github.ben-manes.versions from 0.28.0 to 0.43.0 Bumps com.github.ben-manes.versions from 0.28.0 to 0.43.0. --- updated-dependencies: - dependency-name: com.github.ben-manes.versions dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..4b22020 100644 --- a/build.gradle +++ b/build.gradle @@ -2,7 +2,7 @@ plugins { id 'java' id 'application' id 'com.github.johnrengelman.shadow' version '5.2.0' - id 'com.github.ben-manes.versions' version '0.28.0' + id 'com.github.ben-manes.versions' version '0.43.0' } group = 'com.github.fabienrenaud' From 1c08d62b1e0642de480a4172cdf33c178f41cf0a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:33:43 +0000 Subject: [PATCH 31/42] Bump gson from 2.8.9 to 2.10 Bumps [gson](https://github.com/google/gson) from 2.8.9 to 2.10. - [Release notes](https://github.com/google/gson/releases) - [Changelog](https://github.com/google/gson/blob/master/CHANGELOG.md) - [Commits](https://github.com/google/gson/compare/gson-parent-2.8.9...gson-parent-2.10) --- updated-dependencies: - dependency-name: com.google.code.gson:gson dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..d46fafa 100644 --- a/build.gradle +++ b/build.gradle @@ -37,7 +37,7 @@ dependencies { implementation group: 'com.fasterxml.jackson.module', name: 'jackson-module-blackbird', version: "${jacksonVersion}" implementation group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310', version: "${jacksonVersion}" // GSON - implementation group: 'com.google.code.gson', name: 'gson', version: '2.8.9' + implementation group: 'com.google.code.gson', name: 'gson', version: '2.10' // JSONP implementation group: 'javax.json', name: 'javax.json-api', version: '1.1.4' implementation group: 'org.glassfish', name: 'javax.json', version: '1.1.4' From df3c7f803e44a11e504d3232b07a97689f4daf90 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:33:49 +0000 Subject: [PATCH 32/42] Bump jacksonVersion from 2.13.0 to 2.13.4 Bumps `jacksonVersion` from 2.13.0 to 2.13.4. Updates `jackson-databind` from 2.13.0 to 2.13.4 - [Release notes](https://github.com/FasterXML/jackson/releases) - [Commits](https://github.com/FasterXML/jackson/commits) Updates `jackson-module-afterburner` from 2.13.0 to 2.13.4 - [Release notes](https://github.com/FasterXML/jackson-modules-base/releases) - [Commits](https://github.com/FasterXML/jackson-modules-base/compare/jackson-modules-base-2.13.0...jackson-modules-base-2.13.4) Updates `jackson-module-blackbird` from 2.13.0 to 2.13.4 - [Release notes](https://github.com/FasterXML/jackson-modules-base/releases) - [Commits](https://github.com/FasterXML/jackson-modules-base/compare/jackson-modules-base-2.13.0...jackson-modules-base-2.13.4) Updates `jackson-datatype-jsr310` from 2.13.0 to 2.13.4 --- updated-dependencies: - dependency-name: com.fasterxml.jackson.core:jackson-databind dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: com.fasterxml.jackson.module:jackson-module-afterburner dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: com.fasterxml.jackson.module:jackson-module-blackbird dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: com.fasterxml.jackson.datatype:jackson-datatype-jsr310 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..e65a5e2 100644 --- a/build.gradle +++ b/build.gradle @@ -17,7 +17,7 @@ repositories { } ext { - jacksonVersion = '2.13.0' + jacksonVersion = '2.13.4' dslJsonVersion = '1.9.9' johnzonVersion = '1.2.15' jmhVersion = '1.33' From dd48ee351a63f803863524ce20f2f8e842eb7d2b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:33:51 +0000 Subject: [PATCH 33/42] Bump json from 20210307 to 20220924 Bumps [json](https://github.com/douglascrockford/JSON-java) from 20210307 to 20220924. - [Release notes](https://github.com/douglascrockford/JSON-java/releases) - [Changelog](https://github.com/stleary/JSON-java/blob/master/docs/RELEASES.md) - [Commits](https://github.com/douglascrockford/JSON-java/commits) --- updated-dependencies: - dependency-name: org.json:json dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..377120b 100644 --- a/build.gradle +++ b/build.gradle @@ -30,7 +30,7 @@ dependencies { implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.9' // org.json - implementation group: 'org.json', name: 'json', version: '20210307' + implementation group: 'org.json', name: 'json', version: '20220924' // Jackson implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: "${jacksonVersion}" implementation group: 'com.fasterxml.jackson.module', name: 'jackson-module-afterburner', version: "${jacksonVersion}" From 48a4dfcba8fa787ee1e58f65761333efc4cc7ffe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:37:53 +0000 Subject: [PATCH 34/42] Bump johnzonVersion from 1.2.15 to 1.2.19 Bumps `johnzonVersion` from 1.2.15 to 1.2.19. Updates `johnzon-core` from 1.2.15 to 1.2.19 Updates `johnzon-mapper` from 1.2.15 to 1.2.19 --- updated-dependencies: - dependency-name: org.apache.johnzon:johnzon-core dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.apache.johnzon:johnzon-mapper dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..a860a00 100644 --- a/build.gradle +++ b/build.gradle @@ -19,7 +19,7 @@ repositories { ext { jacksonVersion = '2.13.0' dslJsonVersion = '1.9.9' - johnzonVersion = '1.2.15' + johnzonVersion = '1.2.19' jmhVersion = '1.33' } From 3963711eece63706727a7a42875de3ecc909c307 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:38:12 +0000 Subject: [PATCH 35/42] Bump javassist from 3.26.0-GA to 3.29.2-GA Bumps [javassist](https://github.com/jboss-javassist/javassist) from 3.26.0-GA to 3.29.2-GA. - [Release notes](https://github.com/jboss-javassist/javassist/releases) - [Changelog](https://github.com/jboss-javassist/javassist/blob/master/Changes.md) - [Commits](https://github.com/jboss-javassist/javassist/commits) --- updated-dependencies: - dependency-name: org.javassist:javassist dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..9da5ea0 100644 --- a/build.gradle +++ b/build.gradle @@ -77,7 +77,7 @@ dependencies { implementation group: 'org.apache.tapestry', name: 'tapestry-json', version: '5.7.3' // jsoniter implementation group: 'com.jsoniter', name: 'jsoniter', version: '0.9.23' - implementation group: 'org.javassist', name: 'javassist', version: '3.26.0-GA' + implementation group: 'org.javassist', name: 'javassist', version: '3.29.2-GA' // minimal-json implementation group: 'com.eclipsesource.minimal-json', name: 'minimal-json', version: '0.9.5' // mjson From 07062f8cec099ae36a2666a7506c46288cbccbe1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:38:19 +0000 Subject: [PATCH 36/42] Bump yasson from 1.0.9 to 3.0.2 Bumps [yasson](https://github.com/eclipse-ee4j/yasson) from 1.0.9 to 3.0.2. - [Release notes](https://github.com/eclipse-ee4j/yasson/releases) - [Commits](https://github.com/eclipse-ee4j/yasson/compare/1.0.9...3.0.2) --- updated-dependencies: - dependency-name: org.eclipse:yasson dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..467d6f4 100644 --- a/build.gradle +++ b/build.gradle @@ -43,7 +43,7 @@ dependencies { implementation group: 'org.glassfish', name: 'javax.json', version: '1.1.4' // JSONB implementation group: 'javax.json.bind', name: 'javax.json.bind-api', version: '1.0' - implementation group: 'org.eclipse', name: 'yasson', version: '1.0.9' + implementation group: 'org.eclipse', name: 'yasson', version: '3.0.2' // GENSON implementation group: 'com.owlike', name: 'genson', version: '1.6' // FlexJson From bddd7fe2a301f787b2f9dfdeb1e583626711f439 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:40:20 +0000 Subject: [PATCH 37/42] Bump commons-lang3 from 3.9 to 3.12.0 Bumps commons-lang3 from 3.9 to 3.12.0. --- updated-dependencies: - dependency-name: org.apache.commons:commons-lang3 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..79a3e64 100644 --- a/build.gradle +++ b/build.gradle @@ -27,7 +27,7 @@ dependencies { // CLI and misc implementation group: 'io.airlift', name: 'airline', version: '0.9' - implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.9' + implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.12.0' // org.json implementation group: 'org.json', name: 'json', version: '20210307' From 3f86f5464123aaf47ff6ec0f8750ca7f0ed3b028 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:40:31 +0000 Subject: [PATCH 38/42] Bump fastjson from 1.2.78 to 2.0.17 Bumps [fastjson](https://github.com/alibaba/fastjson2) from 1.2.78 to 2.0.17. - [Release notes](https://github.com/alibaba/fastjson2/releases) - [Commits](https://github.com/alibaba/fastjson2/commits/2.0.17) --- updated-dependencies: - dependency-name: com.alibaba:fastjson dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..c0501f3 100644 --- a/build.gradle +++ b/build.gradle @@ -49,7 +49,7 @@ dependencies { // FlexJson implementation group: 'net.sf.flexjson', name: 'flexjson', version: '3.3' // FastJson - implementation group: 'com.alibaba', name: 'fastjson', version: '1.2.78' + implementation group: 'com.alibaba', name: 'fastjson', version: '2.0.17' // json-io implementation group: 'com.cedarsoftware', name: 'json-io', version: '4.13.0' // boon From 9991eb3057a53dae064acf66b8b8c9747255a647 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 30 Oct 2022 15:40:34 +0000 Subject: [PATCH 39/42] Bump json-io from 4.13.0 to 4.14.0 Bumps [json-io](https://github.com/jdereg/json-io) from 4.13.0 to 4.14.0. - [Release notes](https://github.com/jdereg/json-io/releases) - [Changelog](https://github.com/jdereg/json-io/blob/master/changelog.md) - [Commits](https://github.com/jdereg/json-io/compare/4.13.0...4.14.0) --- updated-dependencies: - dependency-name: com.cedarsoftware:json-io dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 14e6234..9a25f0b 100644 --- a/build.gradle +++ b/build.gradle @@ -51,7 +51,7 @@ dependencies { // FastJson implementation group: 'com.alibaba', name: 'fastjson', version: '1.2.78' // json-io - implementation group: 'com.cedarsoftware', name: 'json-io', version: '4.13.0' + implementation group: 'com.cedarsoftware', name: 'json-io', version: '4.14.0' // boon implementation group: 'io.fastjson', name: 'boon', version: '0.34' // johnzon From 7e553b0d157df0e502e7e7cc50cb3118b7b99889 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 30 Oct 2022 16:08:50 +0000 Subject: [PATCH 40/42] testing new dependencies --- .../jjb/provider/ClientsJsonProvider.java | 52 ++++++++++--------- .../jjb/provider/JsonProvider.java | 5 +- .../jjb/provider/UsersJsonProvider.java | 24 ++++----- 3 files changed, 40 insertions(+), 41 deletions(-) diff --git a/src/main/java/com/github/fabienrenaud/jjb/provider/ClientsJsonProvider.java b/src/main/java/com/github/fabienrenaud/jjb/provider/ClientsJsonProvider.java index 0ef61af..254bea9 100644 --- a/src/main/java/com/github/fabienrenaud/jjb/provider/ClientsJsonProvider.java +++ b/src/main/java/com/github/fabienrenaud/jjb/provider/ClientsJsonProvider.java @@ -11,11 +11,7 @@ import com.fasterxml.jackson.module.afterburner.AfterburnerModule; import com.fasterxml.jackson.module.blackbird.BlackbirdModule; import com.github.fabienrenaud.jjb.model.Clients; -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.JsonDeserializer; -import com.google.gson.JsonPrimitive; -import com.google.gson.JsonSerializer; +import com.google.gson.*; import com.owlike.genson.Context; import com.owlike.genson.Converter; import com.owlike.genson.Genson; @@ -33,9 +29,9 @@ import org.apache.johnzon.core.JsonProviderImpl; import org.apache.johnzon.mapper.Mapper; import org.eclipse.yasson.JsonBindingProvider; +import org.eclipse.yasson.YassonJsonb; import javax.annotation.Nullable; -import javax.json.bind.Jsonb; import java.io.IOException; import java.math.BigDecimal; import java.time.LocalDate; @@ -72,6 +68,7 @@ public class ClientsJsonProvider implements JsonProvider { public void serialize(LocalDate object, com.owlike.genson.stream.ObjectWriter writer, Context ctx) { writer.writeString(object.toString()); } + public LocalDate deserialize(ObjectReader reader, Context ctx) { return LocalDate.parse(reader.valueAsString()); } @@ -80,26 +77,27 @@ public LocalDate deserialize(ObjectReader reader, Context ctx) { public void serialize(OffsetDateTime object, com.owlike.genson.stream.ObjectWriter writer, Context ctx) { writer.writeString(object.toString()); } + public OffsetDateTime deserialize(ObjectReader reader, Context ctx) { return OffsetDateTime.parse(reader.valueAsString()); } }, OffsetDateTime.class) .create(); - private final Jsonb yasson = new JsonBindingProvider().create() - .withProvider(new org.glassfish.json.JsonProviderImpl()) + private final YassonJsonb yasson = (YassonJsonb) new JsonBindingProvider().create() +// .withProvider("org.glassfish.json.JsonProviderImpl") .build(); - private static final AbstractTransformer FLEX_IDENTITY = new AbstractTransformer() { - @Override - public void transform(Object o) { - getContext().writeQuoted(o.toString()); - } - }; + private static final AbstractTransformer FLEX_IDENTITY = new AbstractTransformer() { + @Override + public void transform(Object o) { + getContext().writeQuoted(o.toString()); + } + }; private final JSONDeserializer flexjsonDeser = new JSONDeserializer() .use(UUID.class, (objectBinder, o, type, aClass) -> UUID.fromString((String) o)) .use(LocalDate.class, (objectBinder, o, type, aClass) -> LocalDate.parse((String) o)) .use(OffsetDateTime.class, (objectBinder, o, type, aClass) -> OffsetDateTime.parse((String) o)); - private final org.boon.json.ObjectMapper boon = org.boon.json.JsonFactory.create(); + private final org.boon.json.ObjectMapper boon = org.boon.json.JsonFactory.create(); private final Mapper johnzon; private final com.squareup.moshi.JsonAdapter moshi = new Moshi.Builder().add(UUID.class, new JsonAdapter() { @@ -108,6 +106,7 @@ public void transform(Object o) { public UUID fromJson(com.squareup.moshi.JsonReader reader) throws IOException { return UUID.fromString(reader.nextString()); } + @Override public void toJson(com.squareup.moshi.JsonWriter writer, @Nullable UUID value) throws IOException { writer.value(value.toString()); @@ -118,6 +117,7 @@ public void toJson(com.squareup.moshi.JsonWriter writer, @Nullable UUID value) t public BigDecimal fromJson(com.squareup.moshi.JsonReader reader) throws IOException { return new BigDecimal(reader.nextString()); } + @Override public void toJson(com.squareup.moshi.JsonWriter writer, @Nullable BigDecimal value) throws IOException { writer.value(value.toPlainString()); @@ -128,6 +128,7 @@ public void toJson(com.squareup.moshi.JsonWriter writer, @Nullable BigDecimal va public LocalDate fromJson(com.squareup.moshi.JsonReader reader) throws IOException { return LocalDate.parse(reader.nextString()); } + @Override public void toJson(com.squareup.moshi.JsonWriter writer, @Nullable LocalDate value) throws IOException { writer.value(value.toString()); @@ -138,6 +139,7 @@ public void toJson(com.squareup.moshi.JsonWriter writer, @Nullable LocalDate val public OffsetDateTime fromJson(com.squareup.moshi.JsonReader reader) throws IOException { return OffsetDateTime.parse(reader.nextString()); } + @Override public void toJson(com.squareup.moshi.JsonWriter writer, @Nullable OffsetDateTime value) throws IOException { writer.value(value.toString()); @@ -151,10 +153,10 @@ public void toJson(com.squareup.moshi.JsonWriter writer, @Nullable OffsetDateTim private final DslJson dsljson_reflection = new DslJson<>(Settings.withRuntime());//don't include generated classes private final io.avaje.jsonb.JsonType avajeJsonb_jackson = io.avaje.jsonb.Jsonb - .newBuilder() + .builder() .adapter(new JacksonAdapter(/* serializeNulls */ true, /* serializeEmpty */ true, /* failOnUnknown */ false)).build().type(Clients.class); private final io.avaje.jsonb.JsonType avajeJsonb_default = io.avaje.jsonb.Jsonb - .newBuilder() + .builder() .adapter(new JsonStream(/* serializeNulls */ true, /* serializeEmpty */ true, /* failOnUnknown */ false)).build().type(Clients.class); private final Map jsonioStreamOptions = new HashMap<>(); @@ -167,15 +169,15 @@ public ClientsJsonProvider() { // set johnson JsonReader (default is `JsonProvider.provider()`) javax.json.spi.JsonProvider johnzonProvider = new JsonProviderImpl(); johnzon = new org.apache.johnzon.mapper.MapperBuilder() - .setReaderFactory(johnzonProvider.createReaderFactory(Collections.emptyMap())) - .setGeneratorFactory(johnzonProvider.createGeneratorFactory(Collections.emptyMap())) - .setAccessModeName("field") // default is "strict-method" which doesn't work nicely with public attributes - .build(); + .setReaderFactory(johnzonProvider.createReaderFactory(Collections.emptyMap())) + .setGeneratorFactory(johnzonProvider.createGeneratorFactory(Collections.emptyMap())) + .setAccessModeName("field") // default is "strict-method" which doesn't work nicely with public attributes + .build(); TypeConverterManager joddTypeConverterManager = TypeConverterManager.get(); - joddTypeConverterManager.register(UUID.class, value -> UUID.fromString((String)value)); - joddTypeConverterManager.register(LocalDate.class, value -> LocalDate.parse((String)value)); - joddTypeConverterManager.register(OffsetDateTime.class, value -> OffsetDateTime.parse((String)value)); + joddTypeConverterManager.register(UUID.class, value -> UUID.fromString((String) value)); + joddTypeConverterManager.register(LocalDate.class, value -> LocalDate.parse((String) value)); + joddTypeConverterManager.register(OffsetDateTime.class, value -> OffsetDateTime.parse((String) value)); } @@ -215,7 +217,7 @@ public Genson genson() { } @Override - public Jsonb yasson() { + public YassonJsonb yasson() { return yasson; } diff --git a/src/main/java/com/github/fabienrenaud/jjb/provider/JsonProvider.java b/src/main/java/com/github/fabienrenaud/jjb/provider/JsonProvider.java index 9df7f6f..ce2a186 100644 --- a/src/main/java/com/github/fabienrenaud/jjb/provider/JsonProvider.java +++ b/src/main/java/com/github/fabienrenaud/jjb/provider/JsonProvider.java @@ -8,8 +8,7 @@ import flexjson.JSONDeserializer; import flexjson.JSONSerializer; import org.apache.johnzon.mapper.Mapper; - -import javax.json.bind.Jsonb; +import org.eclipse.yasson.YassonJsonb; import java.util.Map; @@ -29,7 +28,7 @@ public interface JsonProvider { Genson genson(); - Jsonb yasson(); + YassonJsonb yasson(); JSONDeserializer flexjsonDeser(); diff --git a/src/main/java/com/github/fabienrenaud/jjb/provider/UsersJsonProvider.java b/src/main/java/com/github/fabienrenaud/jjb/provider/UsersJsonProvider.java index 3a40599..4b53f20 100644 --- a/src/main/java/com/github/fabienrenaud/jjb/provider/UsersJsonProvider.java +++ b/src/main/java/com/github/fabienrenaud/jjb/provider/UsersJsonProvider.java @@ -12,21 +12,19 @@ import com.google.gson.Gson; import com.owlike.genson.Genson; import com.squareup.moshi.Moshi; - import flexjson.JSONDeserializer; import io.avaje.jsonb.JsonType; -import io.avaje.jsonb.stream.JsonStream; import io.avaje.jsonb.jackson.JacksonAdapter; +import io.avaje.jsonb.stream.JsonStream; import org.apache.johnzon.core.JsonProviderImpl; import org.apache.johnzon.mapper.Mapper; import org.eclipse.yasson.JsonBindingProvider; +import org.eclipse.yasson.YassonJsonb; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import javax.json.bind.Jsonb; - public class UsersJsonProvider implements JsonProvider { private final Gson gson = new Gson(); @@ -38,8 +36,8 @@ public class UsersJsonProvider implements JsonProvider { .registerModule(new BlackbirdModule()); private final JsonFactory jacksonFactory = new JsonFactory(); private final Genson genson = new Genson(); - private final Jsonb yasson = new JsonBindingProvider().create() - .withProvider(new org.glassfish.json.JsonProviderImpl()) + private final YassonJsonb yasson = (YassonJsonb) new JsonBindingProvider().create() +// .withProvider(new org.glassfish.json.JsonProviderImpl()) .build(); private final JSONDeserializer flexjsonDeser = new JSONDeserializer<>(); private final org.boon.json.ObjectMapper boon = org.boon.json.JsonFactory.create(); @@ -54,8 +52,8 @@ public class UsersJsonProvider implements JsonProvider { private final Map jsonioStreamOptions = new HashMap<>(); - private final JsonType avajeJsonb_jackson = io.avaje.jsonb.Jsonb.newBuilder().adapter(new JacksonAdapter(/* serializeNulls */ true, /* serializeEmpty */ true, /* failOnUnknown */ false)).build().type(Users.class); - private final JsonType avajeJsonb_default = io.avaje.jsonb.Jsonb.newBuilder().adapter(new JsonStream(/* serializeNulls */ true, /* serializeEmpty */ true, /* failOnUnknown */ false)).build().type(Users.class); + private final JsonType avajeJsonb_jackson = io.avaje.jsonb.Jsonb.builder().adapter(new JacksonAdapter(/* serializeNulls */ true, /* serializeEmpty */ true, /* failOnUnknown */ false)).build().type(Users.class); + private final JsonType avajeJsonb_default = io.avaje.jsonb.Jsonb.builder().adapter(new JsonStream(/* serializeNulls */ true, /* serializeEmpty */ true, /* failOnUnknown */ false)).build().type(Users.class); public UsersJsonProvider() { jsonioStreamOptions.put(JsonReader.USE_MAPS, true); @@ -64,10 +62,10 @@ public UsersJsonProvider() { // set johnson JsonReader (default is `JsonProvider.provider()`) javax.json.spi.JsonProvider johnzonProvider = new JsonProviderImpl(); johnzon = new org.apache.johnzon.mapper.MapperBuilder() - .setReaderFactory(johnzonProvider.createReaderFactory(Collections.emptyMap())) - .setGeneratorFactory(johnzonProvider.createGeneratorFactory(Collections.emptyMap())) - .setAccessModeName("field") // default is "strict-method" which doesn't work nicely with public attributes - .build(); + .setReaderFactory(johnzonProvider.createReaderFactory(Collections.emptyMap())) + .setGeneratorFactory(johnzonProvider.createGeneratorFactory(Collections.emptyMap())) + .setAccessModeName("field") // default is "strict-method" which doesn't work nicely with public attributes + .build(); } @Override @@ -106,7 +104,7 @@ public Genson genson() { } @Override - public Jsonb yasson() { + public YassonJsonb yasson() { return yasson; } From f21e45b9eaf4714a90ebdc0efa1c0a25b82e2a00 Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 30 Oct 2022 16:53:55 +0000 Subject: [PATCH 41/42] rebase with master --- build.gradle | 2 ++ 1 file changed, 2 insertions(+) diff --git a/build.gradle b/build.gradle index aa18a03..31a42f5 100644 --- a/build.gradle +++ b/build.gradle @@ -12,6 +12,8 @@ mainClassName = 'com.github.fabienrenaud.jjb.Cli' sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 +applicationDefaultJvmArgs = ["--add-opens", "java.base/jdk.internal.loader=ALL-UNNAMED"] + repositories { mavenCentral() } From 82c3c05641f8a777e72a980ff76abb77ef689c9e Mon Sep 17 00:00:00 2001 From: ozkanpakdil Date: Sun, 30 Oct 2022 17:18:51 +0000 Subject: [PATCH 42/42] dependabot test added. --- .github/workflows/dependabot-gradle.yml | 25 +++++++++++++++++++++++++ .github/workflows/gradle.yml | 1 + 2 files changed, 26 insertions(+) create mode 100644 .github/workflows/dependabot-gradle.yml diff --git a/.github/workflows/dependabot-gradle.yml b/.github/workflows/dependabot-gradle.yml new file mode 100644 index 0000000..fab0d7e --- /dev/null +++ b/.github/workflows/dependabot-gradle.yml @@ -0,0 +1,25 @@ +name: Dependabot Java CI with Gradle + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + if: ${{ github.actor == 'dependabot[bot]' }} + steps: + - uses: actions/checkout + with: + ref: ${{ github.event.pull_request.head.sha }} + github-token: ${{ secrets.GITHUB_TOKEN }} + - name: Set up JDK 11 + uses: actions/setup-java@v3 + with: + java-version: '11' + distribution: 'temurin' + - name: Build with Gradle + uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1 + with: + arguments: build + - name: Run everything + run: | + ./gradlew test diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index ecc9bda..ffc8f79 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -15,6 +15,7 @@ permissions: jobs: build: runs-on: ubuntu-latest + if: ${{ github.actor != 'dependabot[bot]' }} steps: - uses: actions/checkout@v3 with: