Github user manishgupta88 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/3027#discussion_r244270219
--- Diff:
integration/spark2/src/main/commonTo2.2And2.3/org/apache/spark/sql/hive/CarbonSessionState.scala
---
@@ -105,47 +106,37 @@ class CarbonHiveSessionCatalog(
.asInstanceOf[HiveExternalCatalog].client
}
- def alterTableRename(oldTableIdentifier: TableIdentifier,
- newTableIdentifier: TableIdentifier,
- newTablePath: String): Unit = {
- getClient().runSqlHive(
- s"ALTER TABLE ${ oldTableIdentifier.database.get }.${
oldTableIdentifier.table } " +
- s"RENAME TO ${ oldTableIdentifier.database.get }.${
newTableIdentifier.table }")
- getClient().runSqlHive(
- s"ALTER TABLE ${ oldTableIdentifier.database.get }.${
newTableIdentifier.table} " +
- s"SET SERDEPROPERTIES" +
- s"('tableName'='${ newTableIdentifier.table }', " +
- s"'dbName'='${ oldTableIdentifier.database.get }', 'tablePath'='${
newTablePath }')")
- }
-
- override def alterTable(tableIdentifier: TableIdentifier,
- schemaParts: String,
- cols:
Option[Seq[org.apache.carbondata.core.metadata.schema.table.column.ColumnSchema]])
- : Unit = {
- getClient()
- .runSqlHive(s"ALTER TABLE ${tableIdentifier.database.get}.${
tableIdentifier.table } " +
- s"SET TBLPROPERTIES(${ schemaParts })")
- }
-
override def alterAddColumns(tableIdentifier: TableIdentifier,
schemaParts: String,
- cols:
Option[Seq[org.apache.carbondata.core.metadata.schema.table.column.ColumnSchema]])
- : Unit = {
+ cols: Option[Seq[ColumnSchema]]): Unit = {
alterTable(tableIdentifier, schemaParts, cols)
+ CarbonSessionUtil
+ .alterExternalCatalogForTableWithUpdatedSchema(tableIdentifier,
+ cols,
+ schemaParts,
+ sparkSession)
}
override def alterDropColumns(tableIdentifier: TableIdentifier,
--- End diff --
Unify `alterDropColumns` and `alterAddColumns` into one method...keep
interface methods same but move the common code to 1 method and call it from
the interface methods
---