You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Frank Chen (Jira)" <ji...@apache.org> on 2026/09/22 12:57:00 UTC

[jira] [Created] (CALCITE-7810) Write Rex string literal digests directly

Frank Chen created CALCITE-7810:
-----------------------------------

             Summary: Write Rex string literal digests directly
                 Key: CALCITE-7810
                 URL: https://issues.apache.org/jira/browse/CALCITE-7810
             Project: Calcite
          Issue Type: Sub-task
            Reporter: Frank Chen


String RexLiteral digest generation currently asks NlsString to build a complete SQL string and then copies that temporary string into the destination StringBuilder. Large literal ARRAYs repeat this allocation for every element.

Add NlsString.asSql overloads that append the escaped SQL representation directly to a caller-provided StringBuilder, while preserving ANSI dialect selection, charset-prefix handling, quote escaping, and existing output behavior.

The isolated Druid benchmark reduced allocation by 2.46% at 100,000 string literals and 1.31% at 1,000,000 string literals.

Pull request: [PR #5284|https://github.com/apache/calcite/pull/5284]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)