[ 
https://issues.apache.org/jira/browse/SPARK-60075?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anurag Mantripragada updated SPARK-60075:
-----------------------------------------
    Summary: AAvoid infinite recursion in toString of a V2 expression that 
V2ExpressionSQLBuilder does not know  (was: Avoid infinite recursion in 
toString of a V2 expression that V2ExpressionSQLBuilder does not know)

> AAvoid infinite recursion in toString of a V2 expression that 
> V2ExpressionSQLBuilder does not know
> --------------------------------------------------------------------------------------------------
>
>                 Key: SPARK-60075
>                 URL: https://issues.apache.org/jira/browse/SPARK-60075
>             Project: Spark
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 5.0.0
>            Reporter: Anurag Mantripragada
>            Priority: Major
>
> SPARK-59983 fixed the StackOverflowError in toString of a 
> {{GeneralScalarExpression}} with an unknown name. One case remains. A 
> connector PartitionPredicate that overrides neither toString nor describe 
> still recurses: {{V2ExpressionSQLBuilder.visitPartitionPredicate}} returns 
> describe(), which defaults to ExpressionWithToString.toString, which calls 
> build again, until a StackOverflowError.
> A parent such as Not, And or Cast wrapping such a predicate, or a pushdown 
> builder that reaches it, recurses the same way. Spark's own 
> PartitionPredicateImpl overrides toString, so built-in code paths are not 
> affected.
> SPARK-34586 (https://github.com/apache/spark/pull/58153) works around it for 
> DESCRIBE TABLE EXTENDED of a declared write ordering.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to