Uploaded image for project: 'Spark'
  1. Spark
  2. SPARK-31915

Resolve the grouping column properly per the case sensitivity in grouped and cogrouped pandas UDFs

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.0.0
    • 3.0.1, 3.1.0
    • PySpark, SQL
    • None

    Description

      from pyspark.sql.functions import *
      
      df = spark.createDataFrame([[1, 1]], ["column", "Score"])
      
      @pandas_udf("column integer, Score float", PandasUDFType.GROUPED_MAP)
      def my_pandas_udf(pdf):
          return pdf.assign(Score=0.5)
      
      df.groupby('COLUMN').apply(my_pandas_udf).show()
      
      pyspark.sql.utils.AnalysisException: Reference 'COLUMN' is ambiguous, could be: COLUMN, COLUMN.;
      
      df1 = spark.createDataFrame([(1, 1)], ("column", "value"))
      df2 = spark.createDataFrame([(1, 1)], ("column", "value"))
      
      df1.groupby("COLUMN").cogroup(
          df2.groupby("COLUMN")
      ).applyInPandas(lambda r, l: r + l, df1.schema).show()
      
      pyspark.sql.utils.AnalysisException: cannot resolve '`COLUMN`' given input columns: [COLUMN, COLUMN, value, value];;
      'FlatMapCoGroupsInPandas ['COLUMN], ['COLUMN], <lambda>(column#9L, value#10L, column#13L, value#14L), [column#22L, value#23L]
      :- Project [COLUMN#9L, column#9L, value#10L]
      :  +- LogicalRDD [column#9L, value#10L], false
      +- Project [COLUMN#13L, column#13L, value#14L]
         +- LogicalRDD [column#13L, value#14L], false
      

      Attachments

        Activity

          People

            gurwls223 Hyukjin Kwon
            gurwls223 Hyukjin Kwon
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: