Skip to content

Native engine panics on all-scalar inputs for Substring and StringSpace #3337

@andygrove

Description

@andygrove

Description

When Spark's ConstantFolding optimizer rule is disabled, all-scalar (literal-only) expressions reach Comet's native engine. The native engine panics with:

  • Substring(scalar) should be fold in Spark JVM side.
  • StringSpace(scalar) should be fold in Spark JVM side.

How to Reproduce

SET spark.sql.optimizer.excludedRules=org.apache.spark.sql.catalyst.optimizer.ConstantFolding;
SELECT substring('hello world', 1, 5);
SELECT space(5);
SELECT left('hello', 3);

Expected Behavior

The native engine should handle scalar inputs gracefully — either by computing the correct result or by falling back to Spark, not by panicking.

Affected Expressions

  • substring() / left()
  • space()

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions