You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Maksim Lixakov (Jira)" <ji...@apache.org> on 2024/08/08 09:58:00 UTC

[jira] [Updated] (SPARK-49160) make JdbcUtils methods makeGetter and makeSetter public to extend custom dialect support for complex types

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

Maksim Lixakov updated SPARK-49160:
-----------------------------------
    Summary: make JdbcUtils methods makeGetter and makeSetter public to extend custom dialect support for complex types  (was: ake JdbcUtils methods makeGetter and makeSetter public to extend custom dialect support for complex types)

> make JdbcUtils methods makeGetter and makeSetter public to extend custom dialect support for complex types
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: SPARK-49160
>                 URL: https://issues.apache.org/jira/browse/SPARK-49160
>             Project: Spark
>          Issue Type: Wish
>          Components: Spark Core, SQL
>    Affects Versions: 4.0.0
>            Reporter: Maksim Lixakov
>            Priority: Minor
>
> Currently, in Apache Spark's {{JdbcUtils}} (across all versions, including Spark 4), there is no support for {{{}StructType{}}}, {{{}MapType{}}}, and other complex types except for {{{}ArrayType{}}}. This limitation is evident in the private methods [makeGetter|https://github.com/apache/spark/blob/6246b18635f073e872e32dd05a699007446aee94/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/jdbc/JdbcUtils.scala#L400] and [makeSetter|https://github.com/apache/spark/blob/6246b18635f073e872e32dd05a699007446aee94/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/jdbc/JdbcUtils.scala#L620].
> As Spark provides the ability to implement custom dialects, users cannot implement custom handling for these complex types because the methods are private and they encounter the following error:
>  
> {{org.apache.spark.SparkSQLException: Unsupported type <complex_type>.}}
> The suggestion is to make the {{makeGetter}} and {{makeSetter}} methods public to extend the users' ability to implement custom dialects and handle complex JDBC types.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org