AngersZhuuuu commented on a change in pull request #30957:
URL: https://github.com/apache/spark/pull/30957#discussion_r550222273
##########
File path:
sql/core/src/main/scala/org/apache/spark/sql/execution/BaseScriptTransformationExec.scala
##########
@@ -329,14 +332,45 @@ case class ScriptTransformationIOSchema(
schemaLess: Boolean) extends Serializable {
import ScriptTransformationIOSchema._
- val inputRowFormatMap = inputRowFormat.toMap.withDefault((k) =>
defaultFormat(k))
- val outputRowFormatMap = outputRowFormat.toMap.withDefault((k) =>
defaultFormat(k))
+ val inputRowFormatMap = inputRowFormat.toMap.withDefault(k =>
defaultFormat(k))
+ val outputRowFormatMap = outputRowFormat.toMap.withDefault(k =>
defaultFormat(k))
+
+ val separators = (getByte(inputRowFormatMap("TOK_TABLEROWFORMATFIELD"),
0.toByte) ::
+ getByte(inputRowFormatMap("TOK_TABLEROWFORMATCOLLITEMS"), 1.toByte) ::
+ getByte(inputRowFormatMap("TOK_TABLEROWFORMATMAPKEYS"), 2.toByte) :: Nil)
++
+ (4 to 8).map(_.toByte)
Review comment:
> I'm not sure about the current design and why do we need to use
different separators for each level?
Without different seperators for each level, how can we handle data like
Array(Array(Array(), Array()), Array(Array(), Array()))?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]