@@ -191,7 +191,7 @@ case class MapPartitionsExec(
191
191
override protected def doExecute (): RDD [InternalRow ] = {
192
192
child.execute().mapPartitionsInternal { iter =>
193
193
val getObject = ObjectOperator .unwrapObjectFromRow(child.output.head.dataType)
194
- val outputObject = ObjectOperator .wrapObjectToRow(outputObjAttr.dataType )
194
+ val outputObject = ObjectOperator .wrapObjectToRow(outputObjectType )
195
195
func(iter.map(getObject)).map(outputObject)
196
196
}
197
197
}
@@ -278,10 +278,10 @@ case class MapElementsExec(
278
278
override def doConsume (ctx : CodegenContext , input : Seq [ExprCode ], row : ExprCode ): String = {
279
279
val (funcClass, methodName) = func match {
280
280
case m : MapFunction [_, _] => classOf [MapFunction [_, _]] -> " call"
281
- case _ => FunctionUtils .getFunctionOneName(outputObjAttr.dataType , child.output(0 ).dataType)
281
+ case _ => FunctionUtils .getFunctionOneName(outputObjectType , child.output(0 ).dataType)
282
282
}
283
283
val funcObj = Literal .create(func, ObjectType (funcClass))
284
- val callFunc = Invoke (funcObj, methodName, outputObjAttr.dataType , child.output)
284
+ val callFunc = Invoke (funcObj, methodName, outputObjectType , child.output)
285
285
286
286
val result = BindReferences .bindReference(callFunc, child.output).genCode(ctx)
287
287
@@ -296,7 +296,7 @@ case class MapElementsExec(
296
296
297
297
child.execute().mapPartitionsInternal { iter =>
298
298
val getObject = ObjectOperator .unwrapObjectFromRow(child.output.head.dataType)
299
- val outputObject = ObjectOperator .wrapObjectToRow(outputObjAttr.dataType )
299
+ val outputObject = ObjectOperator .wrapObjectToRow(outputObjectType )
300
300
iter.map(row => outputObject(callFunc(getObject(row))))
301
301
}
302
302
}
@@ -395,7 +395,7 @@ case class MapGroupsExec(
395
395
396
396
val getKey = ObjectOperator .deserializeRowToObject(keyDeserializer, groupingAttributes)
397
397
val getValue = ObjectOperator .deserializeRowToObject(valueDeserializer, dataAttributes)
398
- val outputObject = ObjectOperator .wrapObjectToRow(outputObjAttr.dataType )
398
+ val outputObject = ObjectOperator .wrapObjectToRow(outputObjectType )
399
399
400
400
grouped.flatMap { case (key, rowIter) =>
401
401
val result = func(
@@ -447,8 +447,6 @@ case class FlatMapGroupsInRExec(
447
447
outputObjAttr : Attribute ,
448
448
child : SparkPlan ) extends UnaryExecNode with ObjectProducerExec {
449
449
450
- override def output : Seq [Attribute ] = outputObjAttr :: Nil
451
-
452
450
override def outputPartitioning : Partitioning = child.outputPartitioning
453
451
454
452
override def requiredChildDistribution : Seq [Distribution ] =
@@ -473,7 +471,7 @@ case class FlatMapGroupsInRExec(
473
471
val grouped = GroupedIterator (iter, groupingAttributes, child.output)
474
472
val getKey = ObjectOperator .deserializeRowToObject(keyDeserializer, groupingAttributes)
475
473
val getValue = ObjectOperator .deserializeRowToObject(valueDeserializer, dataAttributes)
476
- val outputObject = ObjectOperator .wrapObjectToRow(outputObjAttr.dataType )
474
+ val outputObject = ObjectOperator .wrapObjectToRow(outputObjectType )
477
475
val runner = new RRunner [(Array [Byte ], Iterator [Array [Byte ]]), Array [Byte ]](
478
476
func, SerializationFormats .ROW , serializerForR, packageNames, broadcastVars,
479
477
isDataFrame = true , colNames = inputSchema.fieldNames,
@@ -606,7 +604,7 @@ case class CoGroupExec(
606
604
val getKey = ObjectOperator .deserializeRowToObject(keyDeserializer, leftGroup)
607
605
val getLeft = ObjectOperator .deserializeRowToObject(leftDeserializer, leftAttr)
608
606
val getRight = ObjectOperator .deserializeRowToObject(rightDeserializer, rightAttr)
609
- val outputObject = ObjectOperator .wrapObjectToRow(outputObjAttr.dataType )
607
+ val outputObject = ObjectOperator .wrapObjectToRow(outputObjectType )
610
608
611
609
new CoGroupedIterator (leftGrouped, rightGrouped, leftGroup).flatMap {
612
610
case (key, leftResult, rightResult) =>
0 commit comments