Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/1476#discussion_r150493082
--- Diff:
integration/spark2/src/main/scala/org/apache/spark/sql/execution/command/preaaggregate/PreAggregateListeners.scala
---
@@ -79,3 +79,190 @@ object LoadPostAggregateListener extends
OperationEventListener {
}
}
}
+
+object PreAggregateDataTypeChangePreListener extends
OperationEventListener {
+ /**
+ * Called on a specified event occurrence
+ *
+ * @param event
+ * @param operationContext
+ */
+ override def onEvent(event: Event, operationContext: OperationContext):
Unit = {
+ val dataTypeChangePreListener =
event.asInstanceOf[AlterTableDataTypeChangePreEvent]
+ val carbonTable = dataTypeChangePreListener.carbonTable
+ val alterTableDataTypeChangeModel =
dataTypeChangePreListener.alterTableDataTypeChangeModel
+ val columnToBeAltered: String =
alterTableDataTypeChangeModel.columnName
+ val dataMapSchemas = carbonTable.getTableInfo.getDataMapSchemaList
+ if (dataMapSchemas != null && !dataMapSchemas.isEmpty) {
+ dataMapSchemas.asScala.foreach {
--- End diff --
move to above line
---