&#010;Failed to execute query using catalyst:&#010;Error: execute, tree:&#010;Exchange hashpartitioning(p_mfgr#204517, 5), true, [id=#152085]&#010;+- Scan hive default.part [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520], HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]&#010;&#010;org.apache.spark.sql.catalyst.errors.package$TreeNodeException: execute, tree:&#010;Exchange hashpartitioning(p_mfgr#204517, 5), true, [id=#152085]&#010;+- Scan hive default.part [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520], HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]&#010;&#010; at org.apache.spark.sql.catalyst.errors.package$.attachTree(package.scala:56)&#010; at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.doExecute(ShuffleExchangeExec.scala:90)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)&#010; at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)&#010; at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)&#010; at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)&#010; at org.apache.spark.sql.execution.InputAdapter.inputRDD(WholeStageCodegenExec.scala:524)&#010; at org.apache.spark.sql.execution.InputRDDCodegen.inputRDDs(WholeStageCodegenExec.scala:452)&#010; at org.apache.spark.sql.execution.InputRDDCodegen.inputRDDs$(WholeStageCodegenExec.scala:451)&#010; at org.apache.spark.sql.execution.InputAdapter.inputRDDs(WholeStageCodegenExec.scala:495)&#010; at org.apache.spark.sql.execution.SortExec.inputRDDs(SortExec.scala:124)&#010; at org.apache.spark.sql.execution.WholeStageCodegenExec.doExecute(WholeStageCodegenExec.scala:717)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)&#010; at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)&#010; at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)&#010; at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)&#010; at org.apache.spark.sql.execution.window.WindowExec.doExecute(WindowExec.scala:115)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)&#010; at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)&#010; at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)&#010; at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)&#010; at org.apache.spark.sql.execution.InputAdapter.inputRDD(WholeStageCodegenExec.scala:524)&#010; at org.apache.spark.sql.execution.InputRDDCodegen.inputRDDs(WholeStageCodegenExec.scala:452)&#010; at org.apache.spark.sql.execution.InputRDDCodegen.inputRDDs$(WholeStageCodegenExec.scala:451)&#010; at org.apache.spark.sql.execution.InputAdapter.inputRDDs(WholeStageCodegenExec.scala:495)&#010; at org.apache.spark.sql.execution.ProjectExec.inputRDDs(basicPhysicalOperators.scala:45)&#010; at org.apache.spark.sql.execution.WholeStageCodegenExec.doExecute(WholeStageCodegenExec.scala:717)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)&#010; at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)&#010; at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)&#010; at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)&#010; at org.apache.spark.sql.execution.SparkPlan.getByteArrayRdd(SparkPlan.scala:329)&#010; at org.apache.spark.sql.execution.SparkPlan.executeCollect(SparkPlan.scala:378)&#010; at org.apache.spark.sql.execution.SparkPlan.executeCollectPublic(SparkPlan.scala:408)&#010; at org.apache.spark.sql.execution.HiveResult$.hiveResultString(HiveResult.scala:52)&#010; at org.apache.spark.sql.hive.execution.HiveComparisonTest.$anonfun$createQueryTest$32(HiveComparisonTest.scala:351)&#010; at org.apache.spark.sql.execution.SQLExecution$.$anonfun$withNewExecutionId$4(SQLExecution.scala:100)&#010; at org.apache.spark.sql.execution.SQLExecution$.withSQLConfPropagated(SQLExecution.scala:160)&#010; at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:87)&#010; at org.apache.spark.sql.hive.execution.HiveComparisonTest.getResult$1(HiveComparisonTest.scala:351)&#010; at org.apache.spark.sql.hive.execution.HiveComparisonTest.$anonfun$createQueryTest$31(HiveComparisonTest.scala:353)&#010; at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:237)&#010; at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)&#010; at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)&#010; at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)&#010; at scala.collection.TraversableLike.map(TraversableLike.scala:237)&#010; at scala.collection.TraversableLike.map$(TraversableLike.scala:230)&#010; at scala.collection.AbstractTraversable.map(Traversable.scala:108)&#010; at org.apache.spark.sql.hive.execution.HiveComparisonTest.doTest$1(HiveComparisonTest.scala:347)&#010; at org.apache.spark.sql.hive.execution.HiveComparisonTest.$anonfun$createQueryTest$10(HiveComparisonTest.scala:467)&#010; at org.scalatest.OutcomeOf.outcomeOf(OutcomeOf.scala:85)&#010; at org.scalatest.OutcomeOf.outcomeOf$(OutcomeOf.scala:83)&#010; at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)&#010; at org.scalatest.Transformer.apply(Transformer.scala:22)&#010; at org.scalatest.Transformer.apply(Transformer.scala:20)&#010; at org.scalatest.FunSuiteLike$$anon$1.apply(FunSuiteLike.scala:186)&#010; at org.apache.spark.SparkFunSuite.withFixture(SparkFunSuite.scala:149)&#010; at org.scalatest.FunSuiteLike.invokeWithFixture$1(FunSuiteLike.scala:184)&#010; at org.scalatest.FunSuiteLike.$anonfun$runTest$1(FunSuiteLike.scala:196)&#010; at org.scalatest.SuperEngine.runTestImpl(Engine.scala:289)&#010; at org.scalatest.FunSuiteLike.runTest(FunSuiteLike.scala:196)&#010; at org.scalatest.FunSuiteLike.runTest$(FunSuiteLike.scala:178)&#010; at org.apache.spark.SparkFunSuite.org$scalatest$BeforeAndAfterEach$$super$runTest(SparkFunSuite.scala:56)&#010; at org.scalatest.BeforeAndAfterEach.runTest(BeforeAndAfterEach.scala:221)&#010; at org.scalatest.BeforeAndAfterEach.runTest$(BeforeAndAfterEach.scala:214)&#010; at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.org$scalatest$BeforeAndAfter$$super$runTest(HiveWindowFunctionQuerySuite.scala:35)&#010; at org.scalatest.BeforeAndAfter.runTest(BeforeAndAfter.scala:203)&#010; at org.scalatest.BeforeAndAfter.runTest$(BeforeAndAfter.scala:192)&#010; at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.runTest(HiveWindowFunctionQuerySuite.scala:35)&#010; at org.scalatest.FunSuiteLike.$anonfun$runTests$1(FunSuiteLike.scala:229)&#010; at org.scalatest.SuperEngine.$anonfun$runTestsInBranch$1(Engine.scala:396)&#010; at scala.collection.immutable.List.foreach(List.scala:392)&#010; at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:384)&#010; at org.scalatest.SuperEngine.runTestsInBranch(Engine.scala:379)&#010; at org.scalatest.SuperEngine.runTestsImpl(Engine.scala:461)&#010; at org.scalatest.FunSuiteLike.runTests(FunSuiteLike.scala:229)&#010; at org.scalatest.FunSuiteLike.runTests$(FunSuiteLike.scala:228)&#010; at org.scalatest.FunSuite.runTests(FunSuite.scala:1560)&#010; at org.scalatest.Suite.run(Suite.scala:1147)&#010; at org.scalatest.Suite.run$(Suite.scala:1129)&#010; at org.scalatest.FunSuite.org$scalatest$FunSuiteLike$$super$run(FunSuite.scala:1560)&#010; at org.scalatest.FunSuiteLike.$anonfun$run$1(FunSuiteLike.scala:233)&#010; at org.scalatest.SuperEngine.runImpl(Engine.scala:521)&#010; at org.scalatest.FunSuiteLike.run(FunSuiteLike.scala:233)&#010; at org.scalatest.FunSuiteLike.run$(FunSuiteLike.scala:232)&#010; at org.apache.spark.SparkFunSuite.org$scalatest$BeforeAndAfterAll$$super$run(SparkFunSuite.scala:56)&#010; at org.scalatest.BeforeAndAfterAll.liftedTree1$1(BeforeAndAfterAll.scala:213)&#010; at org.scalatest.BeforeAndAfterAll.run(BeforeAndAfterAll.scala:210)&#010; at org.scalatest.BeforeAndAfterAll.run$(BeforeAndAfterAll.scala:208)&#010; at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.org$scalatest$BeforeAndAfter$$super$run(HiveWindowFunctionQuerySuite.scala:35)&#010; at org.scalatest.BeforeAndAfter.run(BeforeAndAfter.scala:258)&#010; at org.scalatest.BeforeAndAfter.run$(BeforeAndAfter.scala:256)&#010; at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.run(HiveWindowFunctionQuerySuite.scala:35)&#010; at org.scalatest.Suite.callExecuteOnSuite$1(Suite.scala:1210)&#010; at org.scalatest.Suite.$anonfun$runNestedSuites$1(Suite.scala:1257)&#010; at scala.collection.IndexedSeqOptimized.foreach(IndexedSeqOptimized.scala:36)&#010; at scala.collection.IndexedSeqOptimized.foreach$(IndexedSeqOptimized.scala:33)&#010; at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:198)&#010; at org.scalatest.Suite.runNestedSuites(Suite.scala:1255)&#010; at org.scalatest.Suite.runNestedSuites$(Suite.scala:1189)&#010; at org.scalatest.tools.DiscoverySuite.runNestedSuites(DiscoverySuite.scala:30)&#010; at org.scalatest.Suite.run(Suite.scala:1144)&#010; at org.scalatest.Suite.run$(Suite.scala:1129)&#010; at org.scalatest.tools.DiscoverySuite.run(DiscoverySuite.scala:30)&#010; at org.scalatest.tools.SuiteRunner.run(SuiteRunner.scala:45)&#010; at org.scalatest.tools.Runner$.$anonfun$doRunRunRunDaDoRunRun$13(Runner.scala:1346)&#010; at org.scalatest.tools.Runner$.$anonfun$doRunRunRunDaDoRunRun$13$adapted(Runner.scala:1340)&#010; at scala.collection.immutable.List.foreach(List.scala:392)&#010; at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:1340)&#010; at org.scalatest.tools.Runner$.$anonfun$runOptionallyWithPassFailReporter$24(Runner.scala:1031)&#010; at org.scalatest.tools.Runner$.$anonfun$runOptionallyWithPassFailReporter$24$adapted(Runner.scala:1010)&#010; at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:1506)&#010; at org.scalatest.tools.Runner$.runOptionallyWithPassFailReporter(Runner.scala:1010)&#010; at org.scalatest.tools.Runner$.main(Runner.scala:827)&#010; at org.scalatest.tools.Runner.main(Runner.scala)&#010;Caused by: java.lang.IllegalStateException: Cannot call methods on a stopped SparkContext.&#010;This stopped SparkContext was created at:&#010;&#010;org.apache.spark.sql.hive.StatisticsSuite.<init>(StatisticsSuite.scala:46)&#010;sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)&#010;sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)&#010;sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)&#010;java.lang.reflect.Constructor.newInstance(Constructor.java:423)&#010;java.lang.Class.newInstance(Class.java:442)&#010;org.scalatest.tools.DiscoverySuite$.getSuiteInstance(DiscoverySuite.scala:66)&#010;org.scalatest.tools.DiscoverySuite.$anonfun$nestedSuites$1(DiscoverySuite.scala:38)&#010;scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:237)&#010;scala.collection.Iterator.foreach(Iterator.scala:941)&#010;scala.collection.Iterator.foreach$(Iterator.scala:941)&#010;scala.collection.AbstractIterator.foreach(Iterator.scala:1429)&#010;scala.collection.IterableLike.foreach(IterableLike.scala:74)&#010;scala.collection.IterableLike.foreach$(IterableLike.scala:73)&#010;scala.collection.AbstractIterable.foreach(Iterable.scala:56)&#010;scala.collection.TraversableLike.map(TraversableLike.scala:237)&#010;scala.collection.TraversableLike.map$(TraversableLike.scala:230)&#010;scala.collection.AbstractTraversable.map(Traversable.scala:108)&#010;org.scalatest.tools.DiscoverySuite.<init>(DiscoverySuite.scala:37)&#010;org.scalatest.tools.Runner$.genDiscoSuites$1(Runner.scala:1165)&#010;&#010;The currently active SparkContext was created at:&#010;&#010;(No active SparkContext.)&#010; &#010; at org.apache.spark.SparkContext.assertNotStopped(SparkContext.scala:109)&#010; at org.apache.spark.SparkContext.broadcast(SparkContext.scala:1466)&#010; at org.apache.spark.sql.hive.HadoopTableReader.<init>(TableReader.scala:90)&#010; at org.apache.spark.sql.hive.execution.HiveTableScanExec.hadoopReader$lzycompute(HiveTableScanExec.scala:110)&#010; at org.apache.spark.sql.hive.execution.HiveTableScanExec.hadoopReader(HiveTableScanExec.scala:105)&#010; at org.apache.spark.sql.hive.execution.HiveTableScanExec.$anonfun$doExecute$1(HiveTableScanExec.scala:188)&#010; at org.apache.spark.util.Utils$.withDummyCallSite(Utils.scala:2488)&#010; at org.apache.spark.sql.hive.execution.HiveTableScanExec.doExecute(HiveTableScanExec.scala:188)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)&#010; at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)&#010; at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)&#010; at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)&#010; at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)&#010; at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.inputRDD$lzycompute(ShuffleExchangeExec.scala:64)&#010; at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.inputRDD(ShuffleExchangeExec.scala:64)&#010; at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.shuffleDependency$lzycompute(ShuffleExchangeExec.scala:74)&#010; at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.shuffleDependency(ShuffleExchangeExec.scala:72)&#010; at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.createShuffledRDD(ShuffleExchangeExec.scala:82)&#010; at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.$anonfun$doExecute$1(ShuffleExchangeExec.scala:93)&#010; at org.apache.spark.sql.catalyst.errors.package$.attachTree(package.scala:52)&#010; ... 118 more&#010;&#010;select sub1.r, sub1.dr, sub1.cd, sub1.s1, sub1.deltaSz&#010;from (select p_mfgr, p_name,&#010;rank() over(distribute by p_mfgr sort by p_name) as r,&#010;dense_rank() over(distribute by p_mfgr sort by p_name) as dr,&#010;count(p_size) over(distribute by p_mfgr sort by p_name) as cd,&#010;p_retailprice, sum(p_retailprice) over (distribute by p_mfgr sort by p_name&#010; rows between unbounded preceding and current row) as s1,&#010;p_size, p_size - lag(p_size,1,p_size) over(distribute by p_mfgr sort by p_name) as deltaSz&#010;from part&#010;) sub1&#010;== Parsed Logical Plan ==&#010;'Project ['sub1.r, 'sub1.dr, 'sub1.cd, 'sub1.s1, 'sub1.deltaSz]&#010;+- 'SubqueryAlias `sub1`&#010; +- 'Project ['p_mfgr, 'p_name, 'rank() windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, unspecifiedframe$()) AS r#204506, 'dense_rank() windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, unspecifiedframe$()) AS dr#204507, 'count('p_size) windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, unspecifiedframe$()) AS cd#204508, 'p_retailprice, 'sum('p_retailprice) windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS s1#204509, 'p_size, ('p_size - 'lag('p_size, 1, 'p_size) windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, unspecifiedframe$())) AS deltaSz#204510]&#010; +- 'UnresolvedRelation [part]&#010;&#010;== Analyzed Logical Plan ==&#010;r: int, dr: int, cd: bigint, s1: double, deltaSz: int&#010;Project [r#204506, dr#204507, cd#204508L, s1#204509, deltaSz#204510]&#010;+- SubqueryAlias `sub1`&#010; +- Project [p_mfgr#204517, p_name#204516, r#204506, dr#204507, cd#204508L, p_retailprice#204522, s1#204509, p_size#204520, deltaSz#204510]&#010; +- Project [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520, r#204506, dr#204507, cd#204508L, s1#204509, _we4#204532, r#204506, dr#204507, cd#204508L, s1#204509, (p_size#204520 - _we4#204532) AS deltaSz#204510]&#010; +- Window [rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS r#204506, dense_rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS dr#204507, count(p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RangeFrame, unboundedpreceding$(), currentrow$())) AS cd#204508L, sum(p_retailprice#204522) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS s1#204509, lag(p_size#204520, 1, p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, -1, -1)) AS _we4#204532], [p_mfgr#204517], [p_name#204516 ASC NULLS FIRST]&#010; +- Project [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520]&#010; +- SubqueryAlias `default`.`part`&#010; +- HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]&#010;&#010;== Optimized Logical Plan ==&#010;Project [r#204506, dr#204507, cd#204508L, s1#204509, (p_size#204520 - _we4#204532) AS deltaSz#204510]&#010;+- Window [rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS r#204506, dense_rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS dr#204507, count(p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RangeFrame, unboundedpreceding$(), currentrow$())) AS cd#204508L, sum(p_retailprice#204522) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS s1#204509, lag(p_size#204520, 1, p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, -1, -1)) AS _we4#204532], [p_mfgr#204517], [p_name#204516 ASC NULLS FIRST]&#010; +- Project [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520]&#010; +- HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]&#010;&#010;== Physical Plan ==&#010;*(2) Project [r#204506, dr#204507, cd#204508L, s1#204509, (p_size#204520 - _we4#204532) AS deltaSz#204510]&#010;+- Window [rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS r#204506, dense_rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS dr#204507, count(p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RangeFrame, unboundedpreceding$(), currentrow$())) AS cd#204508L, sum(p_retailprice#204522) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS s1#204509, lag(p_size#204520, 1, p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, -1, -1)) AS _we4#204532], [p_mfgr#204517], [p_name#204516 ASC NULLS FIRST]&#010; +- *(1) Sort [p_mfgr#204517 ASC NULLS FIRST, p_name#204516 ASC NULLS FIRST], false, 0&#010; +- Exchange hashpartitioning(p_mfgr#204517, 5), true, [id=#152085]&#010; +- Scan hive default.part [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520], HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]&#010;&#010;== HIVE - 26 row(s) ==&#010;1 1 2 1173.15 0&#010;1 1 2 2346.3 0&#010;3 2 3 4100.06 32&#010;4 3 4 5702.650000000001 -28&#010;5 4 5 7117.070000000001 22&#010;6 5 6 8749.730000000001 14&#010;1 1 1 1690.68 0&#010;2 2 2 3491.38 26&#010;3 3 3 5523.360000000001 -38&#010;4 4 4 7222.02 23&#010;5 5 5 8923.62 -7&#010;1 1 1 1671.68 0&#010;2 2 2 2861.95 -3&#010;3 3 3 4272.34 5&#010;4 4 4 6195.32 -18&#010;5 5 5 7532.61 44&#010;1 1 1 1620.67 0&#010;2 2 2 2996.09 29&#010;3 3 3 4202.35 -12&#010;4 4 4 6047.27 -20&#010;5 5 5 7337.620000000001 5&#010;1 1 1 1789.69 0&#010;2 2 2 3401.3500000000004 -25&#010;3 3 3 5190.08 -4&#010;4 4 4 6208.18 44&#010;5 5 5 7672.66 -23&#010;


      org.scalatest.exceptions.TestFailedException: 
Failed to execute query using catalyst:
Error: execute, tree:
Exchange hashpartitioning(p_mfgr#204517, 5), true, [id=#152085]
+- Scan hive default.part [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520], HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]

org.apache.spark.sql.catalyst.errors.package$TreeNodeException: execute, tree:
Exchange hashpartitioning(p_mfgr#204517, 5), true, [id=#152085]
+- Scan hive default.part [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520], HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]

	at org.apache.spark.sql.catalyst.errors.package$.attachTree(package.scala:56)
	at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.doExecute(ShuffleExchangeExec.scala:90)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)
	at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)
	at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)
	at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)
	at org.apache.spark.sql.execution.InputAdapter.inputRDD(WholeStageCodegenExec.scala:524)
	at org.apache.spark.sql.execution.InputRDDCodegen.inputRDDs(WholeStageCodegenExec.scala:452)
	at org.apache.spark.sql.execution.InputRDDCodegen.inputRDDs$(WholeStageCodegenExec.scala:451)
	at org.apache.spark.sql.execution.InputAdapter.inputRDDs(WholeStageCodegenExec.scala:495)
	at org.apache.spark.sql.execution.SortExec.inputRDDs(SortExec.scala:124)
	at org.apache.spark.sql.execution.WholeStageCodegenExec.doExecute(WholeStageCodegenExec.scala:717)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)
	at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)
	at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)
	at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)
	at org.apache.spark.sql.execution.window.WindowExec.doExecute(WindowExec.scala:115)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)
	at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)
	at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)
	at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)
	at org.apache.spark.sql.execution.InputAdapter.inputRDD(WholeStageCodegenExec.scala:524)
	at org.apache.spark.sql.execution.InputRDDCodegen.inputRDDs(WholeStageCodegenExec.scala:452)
	at org.apache.spark.sql.execution.InputRDDCodegen.inputRDDs$(WholeStageCodegenExec.scala:451)
	at org.apache.spark.sql.execution.InputAdapter.inputRDDs(WholeStageCodegenExec.scala:495)
	at org.apache.spark.sql.execution.ProjectExec.inputRDDs(basicPhysicalOperators.scala:45)
	at org.apache.spark.sql.execution.WholeStageCodegenExec.doExecute(WholeStageCodegenExec.scala:717)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)
	at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)
	at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)
	at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)
	at org.apache.spark.sql.execution.SparkPlan.getByteArrayRdd(SparkPlan.scala:329)
	at org.apache.spark.sql.execution.SparkPlan.executeCollect(SparkPlan.scala:378)
	at org.apache.spark.sql.execution.SparkPlan.executeCollectPublic(SparkPlan.scala:408)
	at org.apache.spark.sql.execution.HiveResult$.hiveResultString(HiveResult.scala:52)
	at org.apache.spark.sql.hive.execution.HiveComparisonTest.$anonfun$createQueryTest$32(HiveComparisonTest.scala:351)
	at org.apache.spark.sql.execution.SQLExecution$.$anonfun$withNewExecutionId$4(SQLExecution.scala:100)
	at org.apache.spark.sql.execution.SQLExecution$.withSQLConfPropagated(SQLExecution.scala:160)
	at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:87)
	at org.apache.spark.sql.hive.execution.HiveComparisonTest.getResult$1(HiveComparisonTest.scala:351)
	at org.apache.spark.sql.hive.execution.HiveComparisonTest.$anonfun$createQueryTest$31(HiveComparisonTest.scala:353)
	at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:237)
	at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)
	at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)
	at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)
	at scala.collection.TraversableLike.map(TraversableLike.scala:237)
	at scala.collection.TraversableLike.map$(TraversableLike.scala:230)
	at scala.collection.AbstractTraversable.map(Traversable.scala:108)
	at org.apache.spark.sql.hive.execution.HiveComparisonTest.doTest$1(HiveComparisonTest.scala:347)
	at org.apache.spark.sql.hive.execution.HiveComparisonTest.$anonfun$createQueryTest$10(HiveComparisonTest.scala:467)
	at org.scalatest.OutcomeOf.outcomeOf(OutcomeOf.scala:85)
	at org.scalatest.OutcomeOf.outcomeOf$(OutcomeOf.scala:83)
	at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
	at org.scalatest.Transformer.apply(Transformer.scala:22)
	at org.scalatest.Transformer.apply(Transformer.scala:20)
	at org.scalatest.FunSuiteLike$$anon$1.apply(FunSuiteLike.scala:186)
	at org.apache.spark.SparkFunSuite.withFixture(SparkFunSuite.scala:149)
	at org.scalatest.FunSuiteLike.invokeWithFixture$1(FunSuiteLike.scala:184)
	at org.scalatest.FunSuiteLike.$anonfun$runTest$1(FunSuiteLike.scala:196)
	at org.scalatest.SuperEngine.runTestImpl(Engine.scala:289)
	at org.scalatest.FunSuiteLike.runTest(FunSuiteLike.scala:196)
	at org.scalatest.FunSuiteLike.runTest$(FunSuiteLike.scala:178)
	at org.apache.spark.SparkFunSuite.org$scalatest$BeforeAndAfterEach$$super$runTest(SparkFunSuite.scala:56)
	at org.scalatest.BeforeAndAfterEach.runTest(BeforeAndAfterEach.scala:221)
	at org.scalatest.BeforeAndAfterEach.runTest$(BeforeAndAfterEach.scala:214)
	at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.org$scalatest$BeforeAndAfter$$super$runTest(HiveWindowFunctionQuerySuite.scala:35)
	at org.scalatest.BeforeAndAfter.runTest(BeforeAndAfter.scala:203)
	at org.scalatest.BeforeAndAfter.runTest$(BeforeAndAfter.scala:192)
	at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.runTest(HiveWindowFunctionQuerySuite.scala:35)
	at org.scalatest.FunSuiteLike.$anonfun$runTests$1(FunSuiteLike.scala:229)
	at org.scalatest.SuperEngine.$anonfun$runTestsInBranch$1(Engine.scala:396)
	at scala.collection.immutable.List.foreach(List.scala:392)
	at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:384)
	at org.scalatest.SuperEngine.runTestsInBranch(Engine.scala:379)
	at org.scalatest.SuperEngine.runTestsImpl(Engine.scala:461)
	at org.scalatest.FunSuiteLike.runTests(FunSuiteLike.scala:229)
	at org.scalatest.FunSuiteLike.runTests$(FunSuiteLike.scala:228)
	at org.scalatest.FunSuite.runTests(FunSuite.scala:1560)
	at org.scalatest.Suite.run(Suite.scala:1147)
	at org.scalatest.Suite.run$(Suite.scala:1129)
	at org.scalatest.FunSuite.org$scalatest$FunSuiteLike$$super$run(FunSuite.scala:1560)
	at org.scalatest.FunSuiteLike.$anonfun$run$1(FunSuiteLike.scala:233)
	at org.scalatest.SuperEngine.runImpl(Engine.scala:521)
	at org.scalatest.FunSuiteLike.run(FunSuiteLike.scala:233)
	at org.scalatest.FunSuiteLike.run$(FunSuiteLike.scala:232)
	at org.apache.spark.SparkFunSuite.org$scalatest$BeforeAndAfterAll$$super$run(SparkFunSuite.scala:56)
	at org.scalatest.BeforeAndAfterAll.liftedTree1$1(BeforeAndAfterAll.scala:213)
	at org.scalatest.BeforeAndAfterAll.run(BeforeAndAfterAll.scala:210)
	at org.scalatest.BeforeAndAfterAll.run$(BeforeAndAfterAll.scala:208)
	at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.org$scalatest$BeforeAndAfter$$super$run(HiveWindowFunctionQuerySuite.scala:35)
	at org.scalatest.BeforeAndAfter.run(BeforeAndAfter.scala:258)
	at org.scalatest.BeforeAndAfter.run$(BeforeAndAfter.scala:256)
	at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.run(HiveWindowFunctionQuerySuite.scala:35)
	at org.scalatest.Suite.callExecuteOnSuite$1(Suite.scala:1210)
	at org.scalatest.Suite.$anonfun$runNestedSuites$1(Suite.scala:1257)
	at scala.collection.IndexedSeqOptimized.foreach(IndexedSeqOptimized.scala:36)
	at scala.collection.IndexedSeqOptimized.foreach$(IndexedSeqOptimized.scala:33)
	at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:198)
	at org.scalatest.Suite.runNestedSuites(Suite.scala:1255)
	at org.scalatest.Suite.runNestedSuites$(Suite.scala:1189)
	at org.scalatest.tools.DiscoverySuite.runNestedSuites(DiscoverySuite.scala:30)
	at org.scalatest.Suite.run(Suite.scala:1144)
	at org.scalatest.Suite.run$(Suite.scala:1129)
	at org.scalatest.tools.DiscoverySuite.run(DiscoverySuite.scala:30)
	at org.scalatest.tools.SuiteRunner.run(SuiteRunner.scala:45)
	at org.scalatest.tools.Runner$.$anonfun$doRunRunRunDaDoRunRun$13(Runner.scala:1346)
	at org.scalatest.tools.Runner$.$anonfun$doRunRunRunDaDoRunRun$13$adapted(Runner.scala:1340)
	at scala.collection.immutable.List.foreach(List.scala:392)
	at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:1340)
	at org.scalatest.tools.Runner$.$anonfun$runOptionallyWithPassFailReporter$24(Runner.scala:1031)
	at org.scalatest.tools.Runner$.$anonfun$runOptionallyWithPassFailReporter$24$adapted(Runner.scala:1010)
	at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:1506)
	at org.scalatest.tools.Runner$.runOptionallyWithPassFailReporter(Runner.scala:1010)
	at org.scalatest.tools.Runner$.main(Runner.scala:827)
	at org.scalatest.tools.Runner.main(Runner.scala)
Caused by: java.lang.IllegalStateException: Cannot call methods on a stopped SparkContext.
This stopped SparkContext was created at:

org.apache.spark.sql.hive.StatisticsSuite.<init>(StatisticsSuite.scala:46)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
java.lang.reflect.Constructor.newInstance(Constructor.java:423)
java.lang.Class.newInstance(Class.java:442)
org.scalatest.tools.DiscoverySuite$.getSuiteInstance(DiscoverySuite.scala:66)
org.scalatest.tools.DiscoverySuite.$anonfun$nestedSuites$1(DiscoverySuite.scala:38)
scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:237)
scala.collection.Iterator.foreach(Iterator.scala:941)
scala.collection.Iterator.foreach$(Iterator.scala:941)
scala.collection.AbstractIterator.foreach(Iterator.scala:1429)
scala.collection.IterableLike.foreach(IterableLike.scala:74)
scala.collection.IterableLike.foreach$(IterableLike.scala:73)
scala.collection.AbstractIterable.foreach(Iterable.scala:56)
scala.collection.TraversableLike.map(TraversableLike.scala:237)
scala.collection.TraversableLike.map$(TraversableLike.scala:230)
scala.collection.AbstractTraversable.map(Traversable.scala:108)
org.scalatest.tools.DiscoverySuite.<init>(DiscoverySuite.scala:37)
org.scalatest.tools.Runner$.genDiscoSuites$1(Runner.scala:1165)

The currently active SparkContext was created at:

(No active SparkContext.)
         
	at org.apache.spark.SparkContext.assertNotStopped(SparkContext.scala:109)
	at org.apache.spark.SparkContext.broadcast(SparkContext.scala:1466)
	at org.apache.spark.sql.hive.HadoopTableReader.<init>(TableReader.scala:90)
	at org.apache.spark.sql.hive.execution.HiveTableScanExec.hadoopReader$lzycompute(HiveTableScanExec.scala:110)
	at org.apache.spark.sql.hive.execution.HiveTableScanExec.hadoopReader(HiveTableScanExec.scala:105)
	at org.apache.spark.sql.hive.execution.HiveTableScanExec.$anonfun$doExecute$1(HiveTableScanExec.scala:188)
	at org.apache.spark.util.Utils$.withDummyCallSite(Utils.scala:2488)
	at org.apache.spark.sql.hive.execution.HiveTableScanExec.doExecute(HiveTableScanExec.scala:188)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$execute$1(SparkPlan.scala:189)
	at org.apache.spark.sql.execution.SparkPlan.$anonfun$executeQuery$1(SparkPlan.scala:227)
	at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)
	at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:224)
	at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:185)
	at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.inputRDD$lzycompute(ShuffleExchangeExec.scala:64)
	at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.inputRDD(ShuffleExchangeExec.scala:64)
	at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.shuffleDependency$lzycompute(ShuffleExchangeExec.scala:74)
	at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.shuffleDependency(ShuffleExchangeExec.scala:72)
	at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.createShuffledRDD(ShuffleExchangeExec.scala:82)
	at org.apache.spark.sql.execution.exchange.ShuffleExchangeExec.$anonfun$doExecute$1(ShuffleExchangeExec.scala:93)
	at org.apache.spark.sql.catalyst.errors.package$.attachTree(package.scala:52)
	... 118 more

select sub1.r, sub1.dr, sub1.cd, sub1.s1, sub1.deltaSz
from (select p_mfgr, p_name,
rank() over(distribute by p_mfgr sort by p_name) as r,
dense_rank() over(distribute by p_mfgr sort by p_name) as dr,
count(p_size) over(distribute by p_mfgr sort by p_name) as cd,
p_retailprice, sum(p_retailprice) over (distribute by p_mfgr sort by p_name
                                  rows between unbounded preceding and current row) as s1,
p_size, p_size - lag(p_size,1,p_size) over(distribute by p_mfgr sort by p_name) as deltaSz
from part
) sub1
== Parsed Logical Plan ==
'Project ['sub1.r, 'sub1.dr, 'sub1.cd, 'sub1.s1, 'sub1.deltaSz]
+- 'SubqueryAlias `sub1`
   +- 'Project ['p_mfgr, 'p_name, 'rank() windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, unspecifiedframe$()) AS r#204506, 'dense_rank() windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, unspecifiedframe$()) AS dr#204507, 'count('p_size) windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, unspecifiedframe$()) AS cd#204508, 'p_retailprice, 'sum('p_retailprice) windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS s1#204509, 'p_size, ('p_size - 'lag('p_size, 1, 'p_size) windowspecdefinition('p_mfgr, 'p_name ASC NULLS FIRST, unspecifiedframe$())) AS deltaSz#204510]
      +- 'UnresolvedRelation [part]

== Analyzed Logical Plan ==
r: int, dr: int, cd: bigint, s1: double, deltaSz: int
Project [r#204506, dr#204507, cd#204508L, s1#204509, deltaSz#204510]
+- SubqueryAlias `sub1`
   +- Project [p_mfgr#204517, p_name#204516, r#204506, dr#204507, cd#204508L, p_retailprice#204522, s1#204509, p_size#204520, deltaSz#204510]
      +- Project [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520, r#204506, dr#204507, cd#204508L, s1#204509, _we4#204532, r#204506, dr#204507, cd#204508L, s1#204509, (p_size#204520 - _we4#204532) AS deltaSz#204510]
         +- Window [rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS r#204506, dense_rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS dr#204507, count(p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RangeFrame, unboundedpreceding$(), currentrow$())) AS cd#204508L, sum(p_retailprice#204522) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS s1#204509, lag(p_size#204520, 1, p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, -1, -1)) AS _we4#204532], [p_mfgr#204517], [p_name#204516 ASC NULLS FIRST]
            +- Project [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520]
               +- SubqueryAlias `default`.`part`
                  +- HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]

== Optimized Logical Plan ==
Project [r#204506, dr#204507, cd#204508L, s1#204509, (p_size#204520 - _we4#204532) AS deltaSz#204510]
+- Window [rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS r#204506, dense_rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS dr#204507, count(p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RangeFrame, unboundedpreceding$(), currentrow$())) AS cd#204508L, sum(p_retailprice#204522) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS s1#204509, lag(p_size#204520, 1, p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, -1, -1)) AS _we4#204532], [p_mfgr#204517], [p_name#204516 ASC NULLS FIRST]
   +- Project [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520]
      +- HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]

== Physical Plan ==
*(2) Project [r#204506, dr#204507, cd#204508L, s1#204509, (p_size#204520 - _we4#204532) AS deltaSz#204510]
+- Window [rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS r#204506, dense_rank(p_name#204516) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS dr#204507, count(p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RangeFrame, unboundedpreceding$(), currentrow$())) AS cd#204508L, sum(p_retailprice#204522) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS s1#204509, lag(p_size#204520, 1, p_size#204520) windowspecdefinition(p_mfgr#204517, p_name#204516 ASC NULLS FIRST, specifiedwindowframe(RowFrame, -1, -1)) AS _we4#204532], [p_mfgr#204517], [p_name#204516 ASC NULLS FIRST]
   +- *(1) Sort [p_mfgr#204517 ASC NULLS FIRST, p_name#204516 ASC NULLS FIRST], false, 0
      +- Exchange hashpartitioning(p_mfgr#204517, 5), true, [id=#152085]
         +- Scan hive default.part [p_mfgr#204517, p_name#204516, p_retailprice#204522, p_size#204520], HiveTableRelation `default`.`part`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [p_partkey#204515, p_name#204516, p_mfgr#204517, p_brand#204518, p_type#204519, p_size#204520, p_container#204521, p_retailprice#204522, p_comment#204523]

== HIVE - 26 row(s) ==
1	1	2	1173.15	0
1	1	2	2346.3	0
3	2	3	4100.06	32
4	3	4	5702.650000000001	-28
5	4	5	7117.070000000001	22
6	5	6	8749.730000000001	14
1	1	1	1690.68	0
2	2	2	3491.38	26
3	3	3	5523.360000000001	-38
4	4	4	7222.02	23
5	5	5	8923.62	-7
1	1	1	1671.68	0
2	2	2	2861.95	-3
3	3	3	4272.34	5
4	4	4	6195.32	-18
5	5	5	7532.61	44
1	1	1	1620.67	0
2	2	2	2996.09	29
3	3	3	4202.35	-12
4	4	4	6047.27	-20
5	5	5	7337.620000000001	5
1	1	1	1789.69	0
2	2	2	3401.3500000000004	-25
3	3	3	5190.08	-4
4	4	4	6208.18	44
5	5	5	7672.66	-23
                
      at org.scalatest.Assertions.newAssertionFailedException(Assertions.scala:528)
      at org.scalatest.Assertions.newAssertionFailedException$(Assertions.scala:527)
      at org.scalatest.FunSuite.newAssertionFailedException(FunSuite.scala:1560)
      at org.scalatest.Assertions.fail(Assertions.scala:1089)
      at org.scalatest.Assertions.fail$(Assertions.scala:1085)
      at org.scalatest.FunSuite.fail(FunSuite.scala:1560)
      at org.apache.spark.sql.hive.execution.HiveComparisonTest.$anonfun$createQueryTest$31(HiveComparisonTest.scala:366)
      at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:237)
      at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)
      at scala.collection.mutable.ResizableArray.foreach$(ResizableArray.scala:55)
      at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:49)
      at scala.collection.TraversableLike.map(TraversableLike.scala:237)
      at scala.collection.TraversableLike.map$(TraversableLike.scala:230)
      at scala.collection.AbstractTraversable.map(Traversable.scala:108)
      at org.apache.spark.sql.hive.execution.HiveComparisonTest.doTest$1(HiveComparisonTest.scala:347)
      at org.apache.spark.sql.hive.execution.HiveComparisonTest.$anonfun$createQueryTest$10(HiveComparisonTest.scala:467)
      at org.scalatest.OutcomeOf.outcomeOf(OutcomeOf.scala:85)
      at org.scalatest.OutcomeOf.outcomeOf$(OutcomeOf.scala:83)
      at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
      at org.scalatest.Transformer.apply(Transformer.scala:22)
      at org.scalatest.Transformer.apply(Transformer.scala:20)
      at org.scalatest.FunSuiteLike$$anon$1.apply(FunSuiteLike.scala:186)
      at org.apache.spark.SparkFunSuite.withFixture(SparkFunSuite.scala:149)
      at org.scalatest.FunSuiteLike.invokeWithFixture$1(FunSuiteLike.scala:184)
      at org.scalatest.FunSuiteLike.$anonfun$runTest$1(FunSuiteLike.scala:196)
      at org.scalatest.SuperEngine.runTestImpl(Engine.scala:289)
      at org.scalatest.FunSuiteLike.runTest(FunSuiteLike.scala:196)
      at org.scalatest.FunSuiteLike.runTest$(FunSuiteLike.scala:178)
      at org.apache.spark.SparkFunSuite.org$scalatest$BeforeAndAfterEach$$super$runTest(SparkFunSuite.scala:56)
      at org.scalatest.BeforeAndAfterEach.runTest(BeforeAndAfterEach.scala:221)
      at org.scalatest.BeforeAndAfterEach.runTest$(BeforeAndAfterEach.scala:214)
      at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.org$scalatest$BeforeAndAfter$$super$runTest(HiveWindowFunctionQuerySuite.scala:35)
      at org.scalatest.BeforeAndAfter.runTest(BeforeAndAfter.scala:203)
      at org.scalatest.BeforeAndAfter.runTest$(BeforeAndAfter.scala:192)
      at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.runTest(HiveWindowFunctionQuerySuite.scala:35)
      at org.scalatest.FunSuiteLike.$anonfun$runTests$1(FunSuiteLike.scala:229)
      at org.scalatest.SuperEngine.$anonfun$runTestsInBranch$1(Engine.scala:396)
      at scala.collection.immutable.List.foreach(List.scala:392)
      at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:384)
      at org.scalatest.SuperEngine.runTestsInBranch(Engine.scala:379)
      at org.scalatest.SuperEngine.runTestsImpl(Engine.scala:461)
      at org.scalatest.FunSuiteLike.runTests(FunSuiteLike.scala:229)
      at org.scalatest.FunSuiteLike.runTests$(FunSuiteLike.scala:228)
      at org.scalatest.FunSuite.runTests(FunSuite.scala:1560)
      at org.scalatest.Suite.run(Suite.scala:1147)
      at org.scalatest.Suite.run$(Suite.scala:1129)
      at org.scalatest.FunSuite.org$scalatest$FunSuiteLike$$super$run(FunSuite.scala:1560)
      at org.scalatest.FunSuiteLike.$anonfun$run$1(FunSuiteLike.scala:233)
      at org.scalatest.SuperEngine.runImpl(Engine.scala:521)
      at org.scalatest.FunSuiteLike.run(FunSuiteLike.scala:233)
      at org.scalatest.FunSuiteLike.run$(FunSuiteLike.scala:232)
      at org.apache.spark.SparkFunSuite.org$scalatest$BeforeAndAfterAll$$super$run(SparkFunSuite.scala:56)
      at org.scalatest.BeforeAndAfterAll.liftedTree1$1(BeforeAndAfterAll.scala:213)
      at org.scalatest.BeforeAndAfterAll.run(BeforeAndAfterAll.scala:210)
      at org.scalatest.BeforeAndAfterAll.run$(BeforeAndAfterAll.scala:208)
      at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.org$scalatest$BeforeAndAfter$$super$run(HiveWindowFunctionQuerySuite.scala:35)
      at org.scalatest.BeforeAndAfter.run(BeforeAndAfter.scala:258)
      at org.scalatest.BeforeAndAfter.run$(BeforeAndAfter.scala:256)
      at org.apache.spark.sql.hive.execution.HiveWindowFunctionQuerySuite.run(HiveWindowFunctionQuerySuite.scala:35)
      at org.scalatest.Suite.callExecuteOnSuite$1(Suite.scala:1210)
      at org.scalatest.Suite.$anonfun$runNestedSuites$1(Suite.scala:1257)
      at scala.collection.IndexedSeqOptimized.foreach(IndexedSeqOptimized.scala:36)
      at scala.collection.IndexedSeqOptimized.foreach$(IndexedSeqOptimized.scala:33)
      at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:198)
      at org.scalatest.Suite.runNestedSuites(Suite.scala:1255)
      at org.scalatest.Suite.runNestedSuites$(Suite.scala:1189)
      at org.scalatest.tools.DiscoverySuite.runNestedSuites(DiscoverySuite.scala:30)
      at org.scalatest.Suite.run(Suite.scala:1144)
      at org.scalatest.Suite.run$(Suite.scala:1129)
      at org.scalatest.tools.DiscoverySuite.run(DiscoverySuite.scala:30)
      at org.scalatest.tools.SuiteRunner.run(SuiteRunner.scala:45)
      at org.scalatest.tools.Runner$.$anonfun$doRunRunRunDaDoRunRun$13(Runner.scala:1346)
      at org.scalatest.tools.Runner$.$anonfun$doRunRunRunDaDoRunRun$13$adapted(Runner.scala:1340)
      at scala.collection.immutable.List.foreach(List.scala:392)
      at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:1340)
      at org.scalatest.tools.Runner$.$anonfun$runOptionallyWithPassFailReporter$24(Runner.scala:1031)
      at org.scalatest.tools.Runner$.$anonfun$runOptionallyWithPassFailReporter$24$adapted(Runner.scala:1010)
      at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:1506)
      at org.scalatest.tools.Runner$.runOptionallyWithPassFailReporter(Runner.scala:1010)
      at org.scalatest.tools.Runner$.main(Runner.scala:827)
      at org.scalatest.tools.Runner.main(Runner.scala)