Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2209#discussion_r184918197
--- Diff:
integration/spark2/src/main/scala/org/apache/spark/util/SparkTypeConverter.scala
---
@@ -123,13 +137,29 @@ private[spark] object SparkTypeConverter {
private def recursiveMethod(
table: CarbonTable, dimName: String, childDim: CarbonDimension) = {
childDim.getDataType.getName.toLowerCase match {
- case "array" => s"${
- childDim.getColName.substring(dimName.length + 1)
- }:array<${ getArrayChildren(table, childDim.getColName) }>"
- case "struct" => s"${
- childDim.getColName.substring(dimName.length + 1)
- }:struct<${ getStructChildren(table, childDim.getColName) }>"
- case dType => s"${ childDim.getColName.substring(dimName.length + 1)
}:${ dType }"
+ case "array" => if (table.isTransactionalTable) {
--- End diff --
Better write another method rather than keeping so many if checks
---