Skip to content

Commit ae335ae

Browse files
committed
address comments.
1 parent da7deed commit ae335ae

File tree

8 files changed

+12
-32
lines changed

8 files changed

+12
-32
lines changed

sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/plans/logical/Command.scala

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,14 @@
1717

1818
package org.apache.spark.sql.catalyst.plans.logical
1919

20+
import org.apache.spark.sql.catalyst.expressions.Attribute
21+
2022
/**
2123
* A logical node that represents a non-query command to be executed by the system. For example,
2224
* commands can be used by parsers to represent DDL operations. Commands, unlike queries, are
2325
* eagerly executed.
2426
*/
25-
trait Command
27+
trait Command extends LeafNode {
28+
final override def children: Seq[LogicalPlan] = Seq.empty
29+
override def output: Seq[Attribute] = Seq.empty
30+
}

sql/catalyst/src/test/scala/org/apache/spark/sql/catalyst/analysis/UnsupportedOperationsSuite.scala

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,7 @@ import org.apache.spark.sql.streaming.OutputMode
3131
import org.apache.spark.sql.types.IntegerType
3232

3333
/** A dummy command for testing unsupported operations. */
34-
case class DummyCommand() extends LogicalPlan with Command {
35-
override def output: Seq[Attribute] = Nil
36-
override def children: Seq[LogicalPlan] = Nil
37-
}
34+
case class DummyCommand() extends Command
3835

3936
class UnsupportedOperationsSuite extends SparkFunSuite {
4037

sql/core/src/main/scala/org/apache/spark/sql/execution/command/SetCommand.scala

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,4 @@ case object ResetCommand extends RunnableCommand with Logging {
129129
sparkSession.sessionState.conf.clear()
130130
Seq.empty[Row]
131131
}
132-
133-
override val output: Seq[Attribute] = Seq.empty
134132
}

sql/core/src/main/scala/org/apache/spark/sql/execution/command/cache.scala

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package org.apache.spark.sql.execution.command
1919

2020
import org.apache.spark.sql.{Dataset, Row, SparkSession}
2121
import org.apache.spark.sql.catalyst.TableIdentifier
22-
import org.apache.spark.sql.catalyst.expressions.Attribute
2322
import org.apache.spark.sql.catalyst.plans.QueryPlan
2423
import org.apache.spark.sql.catalyst.plans.logical.LogicalPlan
2524

@@ -47,8 +46,6 @@ case class CacheTableCommand(
4746

4847
Seq.empty[Row]
4948
}
50-
51-
override def output: Seq[Attribute] = Seq.empty
5249
}
5350

5451

@@ -58,8 +55,6 @@ case class UncacheTableCommand(tableIdent: TableIdentifier) extends RunnableComm
5855
sparkSession.catalog.uncacheTable(tableIdent.quotedString)
5956
Seq.empty[Row]
6057
}
61-
62-
override def output: Seq[Attribute] = Seq.empty
6358
}
6459

6560
/**
@@ -71,6 +66,4 @@ case object ClearCacheCommand extends RunnableCommand {
7166
sparkSession.catalog.clearCache()
7267
Seq.empty[Row]
7368
}
74-
75-
override def output: Seq[Attribute] = Seq.empty
7669
}

sql/core/src/main/scala/org/apache/spark/sql/execution/command/commands.scala

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,7 @@ import org.apache.spark.sql.types._
3535
* A logical command that is executed for its side-effects. `RunnableCommand`s are
3636
* wrapped in `ExecutedCommand` during execution.
3737
*/
38-
trait RunnableCommand extends LogicalPlan with logical.Command {
39-
override def output: Seq[Attribute] = Seq.empty
40-
final override def children: Seq[LogicalPlan] = Seq.empty
38+
trait RunnableCommand extends logical.Command {
4139
def run(sparkSession: SparkSession): Seq[Row]
4240
}
4341

sql/core/src/main/scala/org/apache/spark/sql/execution/command/databases.scala

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,4 @@ case class SetDatabaseCommand(databaseName: String) extends RunnableCommand {
5959
sparkSession.sessionState.catalog.setCurrentDatabase(databaseName)
6060
Seq.empty[Row]
6161
}
62-
63-
override val output: Seq[Attribute] = Seq.empty
6462
}

sql/core/src/main/scala/org/apache/spark/sql/execution/command/ddl.scala

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,6 @@ case class CreateDatabaseCommand(
7070
ifNotExists)
7171
Seq.empty[Row]
7272
}
73-
74-
override val output: Seq[Attribute] = Seq.empty
7573
}
7674

7775

@@ -101,8 +99,6 @@ case class DropDatabaseCommand(
10199
sparkSession.sessionState.catalog.dropDatabase(databaseName, ifExists, cascade)
102100
Seq.empty[Row]
103101
}
104-
105-
override val output: Seq[Attribute] = Seq.empty
106102
}
107103

108104
/**
@@ -126,8 +122,6 @@ case class AlterDatabasePropertiesCommand(
126122

127123
Seq.empty[Row]
128124
}
129-
130-
override val output: Seq[Attribute] = Seq.empty
131125
}
132126

133127
/**

sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/ddl.scala

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,15 @@ package org.apache.spark.sql.execution.datasources
2020
import org.apache.spark.sql._
2121
import org.apache.spark.sql.catalyst.TableIdentifier
2222
import org.apache.spark.sql.catalyst.catalog.CatalogTable
23-
import org.apache.spark.sql.catalyst.expressions.Attribute
2423
import org.apache.spark.sql.catalyst.plans.QueryPlan
2524
import org.apache.spark.sql.catalyst.plans.logical.{Command, LogicalPlan}
2625
import org.apache.spark.sql.execution.command.RunnableCommand
2726
import org.apache.spark.sql.types._
2827

29-
case class CreateTable(tableDesc: CatalogTable, mode: SaveMode, query: Option[LogicalPlan])
30-
extends LogicalPlan with Command {
28+
case class CreateTable(
29+
tableDesc: CatalogTable,
30+
mode: SaveMode,
31+
query: Option[LogicalPlan]) extends Command {
3132
assert(tableDesc.provider.isDefined, "The table to be created must have a provider.")
3233

3334
if (query.isEmpty) {
@@ -36,10 +37,6 @@ case class CreateTable(tableDesc: CatalogTable, mode: SaveMode, query: Option[Lo
3637
"create table without data insertion can only use ErrorIfExists or Ignore as SaveMode.")
3738
}
3839

39-
override def output: Seq[Attribute] = Seq.empty[Attribute]
40-
41-
override def children: Seq[LogicalPlan] = Seq.empty[LogicalPlan]
42-
4340
override def innerChildren: Seq[QueryPlan[_]] = query.toSeq
4441
}
4542

0 commit comments

Comments
 (0)