Speed up lexing of long JSON strings
John Naylor <john.naylor@postgresql.org>
Speed up lexing of long JSON strings Use optimized linear search when looking ahead for end quotes, backslashes, and non-printable characters. This results in nearly 40% faster JSON parsing on x86-64 when most values are long strings, and all platforms should see some improvement. Reviewed by Andres Freund and Nathan Bossart Discussion: https://www.postgresql.org/message-id/CAFBsxsGhaR2KQ5eisaK%3D6Vm60t%3DaxhD8Ckj1qFoCH1pktZi%2B2w%40mail.gmail.com Discussion: https://www.postgresql.org/message-id/CAFBsxsESLUyJ5spfOSyPrOvKUEYYNqsBosue9SV1j8ecgNXSKA%40mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| src/common/jsonapi.c | modified | +10 −3 |
| src/test/regress/expected/json.out | modified | +13 −0 |
| src/test/regress/sql/json.sql | modified | +5 −0 |
Discussion
- [PATCH] Optimize json_lex_string by batching character copying 32 messages · 2022-06-24 → 2022-09-02