[ 
https://issues.apache.org/jira/browse/SPARK-41899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17655757#comment-17655757
 ] 

Apache Spark commented on SPARK-41899:
--------------------------------------

User 'zhengruifeng' has created a pull request for this issue:
https://github.com/apache/spark/pull/39452

> DataFrame.createDataFrame converting int to bigint
> --------------------------------------------------
>
>                 Key: SPARK-41899
>                 URL: https://issues.apache.org/jira/browse/SPARK-41899
>             Project: Spark
>          Issue Type: Sub-task
>          Components: Connect
>    Affects Versions: 3.4.0
>            Reporter: Sandeep Singh
>            Priority: Major
>
> {code:java}
> dt = datetime.date(2021, 12, 27)
> # Note; number var in Python gets converted to LongType column;
> # this is not supported by the function, so cast to Integer explicitly
> df = self.spark.createDataFrame([Row(date=dt, add=2)], "date date, add 
> integer")
> self.assertTrue(
>     all(
>         df.select(
>             date_add(df.date, df.add) == datetime.date(2021, 12, 29),
>             date_add(df.date, "add") == datetime.date(2021, 12, 29),
>             date_add(df.date, 3) == datetime.date(2021, 12, 30),
>         ).first()
>     )
> ){code}
> {code:java}
> Traceback (most recent call last):
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/tests/test_functions.py",
>  line 391, in test_date_add_function
>     ).first()
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/connect/dataframe.py", 
> line 246, in first
>     return self.head()
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/connect/dataframe.py", 
> line 310, in head
>     rs = self.head(1)
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/connect/dataframe.py", 
> line 312, in head
>     return self.take(n)
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/connect/dataframe.py", 
> line 317, in take
>     return self.limit(num).collect()
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/connect/dataframe.py", 
> line 1076, in collect
>     table = self._session.client.to_table(query)
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/connect/client.py", 
> line 414, in to_table
>     table, _ = self._execute_and_fetch(req)
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/connect/client.py", 
> line 586, in _execute_and_fetch
>     self._handle_error(rpc_error)
>   File 
> "/Users/s.singh/personal/spark-oss/python/pyspark/sql/connect/client.py", 
> line 625, in _handle_error
>     raise SparkConnectAnalysisException(
> pyspark.sql.connect.client.SparkConnectAnalysisException: 
> [DATATYPE_MISMATCH.UNEXPECTED_INPUT_TYPE] Cannot resolve "date_add(date, 
> add)" due to data type mismatch: Parameter 2 requires the ("INT" or 
> "SMALLINT" or "TINYINT") type, however "add" has the type "BIGINT".
> Plan: 'GlobalLimit 1
> +- 'LocalLimit 1
>    +- 'Project [unresolvedalias('`==`(date_add(date#753, add#754L), 
> 2021-12-29), None), unresolvedalias('`==`(date_add(date#753, add#754L), 
> 2021-12-29), None), (date_add(date#753, 3) = 2021-12-30) AS (date_add(date, 
> 3) = DATE '2021-12-30')#759]
>       +- Project [date#753, add#754L]
>          +- Project [date#749 AS date#753, add#750L AS add#754L]
>             +- LocalRelation [date#749, add#750L]{code}



--
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