&#010;&#010;== Results ==&#010;!== Correct Answer - 3 == == Spark Answer - 3 ==&#010;!struct<> struct<value:int,count:bigint>&#010;![1,1] [2,1]&#010;![2,2] [3,1]&#010;![3,2] [4,1]&#010; &#010;&#010;== Progress ==&#010; AddData to MemoryStream[value#477074]: 1,2,3,4,5,6,7,8,9&#010; CheckAnswer: [1,1],[2,1],[3,1]&#010; AddData to MemoryStream[value#477074]: 2,3,4,5,6&#010;=> CheckAnswer: [1,1],[2,2],[3,2]&#010;&#010;== Stream ==&#010;Output Mode: Complete&#010;Stream state: {MemoryStream[value#477074]: 1}&#010;Thread state: alive&#010;Thread stack trace: java.lang.Thread.sleep(Native Method)&#010;org.apache.spark.sql.execution.streaming.MicroBatchExecution$$anonfun$runActivatedStream$1.apply$mcZ$sp(MicroBatchExecution.scala:211)&#010;org.apache.spark.sql.execution.streaming.ProcessingTimeExecutor.execute(TriggerExecutor.scala:56)&#010;org.apache.spark.sql.execution.streaming.MicroBatchExecution.runActivatedStream(MicroBatchExecution.scala:160)&#010;org.apache.spark.sql.execution.streaming.StreamExecution.org$apache$spark$sql$execution$streaming$StreamExecution$$runStream(StreamExecution.scala:279)&#010;org.apache.spark.sql.execution.streaming.StreamExecution$$anon$1.run(StreamExecution.scala:189)&#010;&#010;&#010;== Sink ==&#010;1: [2,1] [3,1] [4,1]&#010;&#010;&#010;== Plan ==&#010;== Parsed Logical Plan ==&#010;GlobalLimit 3&#010;+- LocalLimit 3&#010; +- Sort [value#477074 ASC NULLS FIRST], true&#010; +- Aggregate [value#477074], [value#477074, count(1) AS count#477079L]&#010; +- GlobalLimit 4&#010; +- LocalLimit 4&#010; +- Project [value#477092 AS value#477074]&#010; +- Streaming RelationV2 MemoryStreamDataSource$[value#477092]&#010;&#010;== Analyzed Logical Plan ==&#010;value: int, count: bigint&#010;GlobalLimit 3&#010;+- LocalLimit 3&#010; +- Sort [value#477074 ASC NULLS FIRST], true&#010; +- Aggregate [value#477074], [value#477074, count(1) AS count#477079L]&#010; +- GlobalLimit 4&#010; +- LocalLimit 4&#010; +- Project [value#477092 AS value#477074]&#010; +- Streaming RelationV2 MemoryStreamDataSource$[value#477092]&#010;&#010;== Optimized Logical Plan ==&#010;GlobalLimit 3&#010;+- LocalLimit 3&#010; +- Sort [value#477092 ASC NULLS FIRST], true&#010; +- Aggregate [value#477092], [value#477092, count(1) AS count#477079L]&#010; +- GlobalLimit 4&#010; +- LocalLimit 4&#010; +- Streaming RelationV2 MemoryStreamDataSource$[value#477092]&#010;&#010;== Physical Plan ==&#010;TakeOrderedAndProject(limit=3, orderBy=[value#477092 ASC NULLS FIRST], output=[value#477092,count#477079L])&#010;+- *(4) HashAggregate(keys=[value#477092], functions=[count(1)], output=[value#477092, count#477079L])&#010; +- StateStoreSave [value#477092], state info [ checkpoint = *********(redacted)/jenkins/workspace/spark-master-test-maven-hadoop-2.6-ubuntu-testing/sql/core/target/tmp/streaming.metadata-2cbc0c26-6738-4924-bd22-be50cac10063/state, runId = 73ce7413-a084-4f1b-ba27-49a89bac2669, opId = 0, ver = 1, numPartitions = 2], Complete, 0&#010; +- *(3) HashAggregate(keys=[value#477092], functions=[merge_count(1)], output=[value#477092, count#477088L])&#010; +- StateStoreRestore [value#477092], state info [ checkpoint = *********(redacted)/jenkins/workspace/spark-master-test-maven-hadoop-2.6-ubuntu-testing/sql/core/target/tmp/streaming.metadata-2cbc0c26-6738-4924-bd22-be50cac10063/state, runId = 73ce7413-a084-4f1b-ba27-49a89bac2669, opId = 0, ver = 1, numPartitions = 2]&#010; +- Exchange hashpartitioning(value#477092, 2)&#010; +- *(2) HashAggregate(keys=[value#477092], functions=[merge_count(1)], output=[value#477092, count#477088L])&#010; +- *(2) HashAggregate(keys=[value#477092], functions=[partial_count(1)], output=[value#477092, count#477088L])&#010; +- GlobalLimit 4&#010; +- *(1) LocalLimit 4&#010; +- *(1) Project [value#477092]&#010; +- *(1) ScanV2 MemoryStreamDataSource$[value#477092]&#010; &#010;


      org.scalatest.exceptions.TestFailedException: 

== Results ==
!== Correct Answer - 3 ==   == Spark Answer - 3 ==
!struct<>                   struct<value:int,count:bigint>
![1,1]                      [2,1]
![2,2]                      [3,1]
![3,2]                      [4,1]
    

== Progress ==
   AddData to MemoryStream[value#477074]: 1,2,3,4,5,6,7,8,9
   CheckAnswer: [1,1],[2,1],[3,1]
   AddData to MemoryStream[value#477074]: 2,3,4,5,6
=> CheckAnswer: [1,1],[2,2],[3,2]

== Stream ==
Output Mode: Complete
Stream state: {MemoryStream[value#477074]: 1}
Thread state: alive
Thread stack trace: java.lang.Thread.sleep(Native Method)
org.apache.spark.sql.execution.streaming.MicroBatchExecution$$anonfun$runActivatedStream$1.apply$mcZ$sp(MicroBatchExecution.scala:211)
org.apache.spark.sql.execution.streaming.ProcessingTimeExecutor.execute(TriggerExecutor.scala:56)
org.apache.spark.sql.execution.streaming.MicroBatchExecution.runActivatedStream(MicroBatchExecution.scala:160)
org.apache.spark.sql.execution.streaming.StreamExecution.org$apache$spark$sql$execution$streaming$StreamExecution$$runStream(StreamExecution.scala:279)
org.apache.spark.sql.execution.streaming.StreamExecution$$anon$1.run(StreamExecution.scala:189)


== Sink ==
1: [2,1] [3,1] [4,1]


== Plan ==
== Parsed Logical Plan ==
GlobalLimit 3
+- LocalLimit 3
   +- Sort [value#477074 ASC NULLS FIRST], true
      +- Aggregate [value#477074], [value#477074, count(1) AS count#477079L]
         +- GlobalLimit 4
            +- LocalLimit 4
               +- Project [value#477092 AS value#477074]
                  +- Streaming RelationV2 MemoryStreamDataSource$[value#477092]

== Analyzed Logical Plan ==
value: int, count: bigint
GlobalLimit 3
+- LocalLimit 3
   +- Sort [value#477074 ASC NULLS FIRST], true
      +- Aggregate [value#477074], [value#477074, count(1) AS count#477079L]
         +- GlobalLimit 4
            +- LocalLimit 4
               +- Project [value#477092 AS value#477074]
                  +- Streaming RelationV2 MemoryStreamDataSource$[value#477092]

== Optimized Logical Plan ==
GlobalLimit 3
+- LocalLimit 3
   +- Sort [value#477092 ASC NULLS FIRST], true
      +- Aggregate [value#477092], [value#477092, count(1) AS count#477079L]
         +- GlobalLimit 4
            +- LocalLimit 4
               +- Streaming RelationV2 MemoryStreamDataSource$[value#477092]

== Physical Plan ==
TakeOrderedAndProject(limit=3, orderBy=[value#477092 ASC NULLS FIRST], output=[value#477092,count#477079L])
+- *(4) HashAggregate(keys=[value#477092], functions=[count(1)], output=[value#477092, count#477079L])
   +- StateStoreSave [value#477092], state info [ checkpoint = *********(redacted)/jenkins/workspace/spark-master-test-maven-hadoop-2.6-ubuntu-testing/sql/core/target/tmp/streaming.metadata-2cbc0c26-6738-4924-bd22-be50cac10063/state, runId = 73ce7413-a084-4f1b-ba27-49a89bac2669, opId = 0, ver = 1, numPartitions = 2], Complete, 0
      +- *(3) HashAggregate(keys=[value#477092], functions=[merge_count(1)], output=[value#477092, count#477088L])
         +- StateStoreRestore [value#477092], state info [ checkpoint = *********(redacted)/jenkins/workspace/spark-master-test-maven-hadoop-2.6-ubuntu-testing/sql/core/target/tmp/streaming.metadata-2cbc0c26-6738-4924-bd22-be50cac10063/state, runId = 73ce7413-a084-4f1b-ba27-49a89bac2669, opId = 0, ver = 1, numPartitions = 2]
            +- Exchange hashpartitioning(value#477092, 2)
               +- *(2) HashAggregate(keys=[value#477092], functions=[merge_count(1)], output=[value#477092, count#477088L])
                  +- *(2) HashAggregate(keys=[value#477092], functions=[partial_count(1)], output=[value#477092, count#477088L])
                     +- GlobalLimit 4
                        +- *(1) LocalLimit 4
                           +- *(1) Project [value#477092]
                              +- *(1) ScanV2 MemoryStreamDataSource$[value#477092]
         
         
      at org.scalatest.Assertions$class.newAssertionFailedException(Assertions.scala:528)
      at org.scalatest.FunSuite.newAssertionFailedException(FunSuite.scala:1560)
      at org.scalatest.Assertions$class.fail(Assertions.scala:1089)
      at org.scalatest.FunSuite.fail(FunSuite.scala:1560)
      at org.apache.spark.sql.streaming.StreamTest$class.failTest$1(StreamTest.scala:450)
      at org.apache.spark.sql.streaming.StreamTest$$anonfun$executeAction$1$18.apply(StreamTest.scala:725)
      at org.apache.spark.sql.streaming.StreamTest$$anonfun$executeAction$1$18.apply(StreamTest.scala:725)
      at scala.Option.foreach(Option.scala:257)
      at org.apache.spark.sql.streaming.StreamTest$class.executeAction$1(StreamTest.scala:724)
      at org.apache.spark.sql.streaming.StreamTest$$anonfun$liftedTree1$1$1.apply(StreamTest.scala:767)
      at org.apache.spark.sql.streaming.StreamTest$$anonfun$liftedTree1$1$1.apply(StreamTest.scala:754)
      at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
      at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48)
      at org.apache.spark.sql.streaming.StreamTest$class.liftedTree1$1(StreamTest.scala:754)
      at org.apache.spark.sql.streaming.StreamTest$class.testStream(StreamTest.scala:753)
      at org.apache.spark.sql.streaming.StreamSuite.testStream(StreamSuite.scala:48)
      at org.apache.spark.sql.streaming.StreamSuite$$anonfun$37.apply$mcV$sp(StreamSuite.scala:987)
      at org.apache.spark.sql.streaming.StreamSuite$$anonfun$37.apply(StreamSuite.scala:984)
      at org.apache.spark.sql.streaming.StreamSuite$$anonfun$37.apply(StreamSuite.scala:984)
      at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
      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:103)
      at org.scalatest.FunSuiteLike$class.invokeWithFixture$1(FunSuiteLike.scala:183)
      at org.scalatest.FunSuiteLike$$anonfun$runTest$1.apply(FunSuiteLike.scala:196)
      at org.scalatest.FunSuiteLike$$anonfun$runTest$1.apply(FunSuiteLike.scala:196)
      at org.scalatest.SuperEngine.runTestImpl(Engine.scala:289)
      at org.scalatest.FunSuiteLike$class.runTest(FunSuiteLike.scala:196)
      at org.apache.spark.sql.streaming.StreamSuite.org$scalatest$BeforeAndAfterEach$$super$runTest(StreamSuite.scala:48)
      at org.scalatest.BeforeAndAfterEach$class.runTest(BeforeAndAfterEach.scala:221)
      at org.apache.spark.sql.streaming.StreamSuite.runTest(StreamSuite.scala:48)
      at org.scalatest.FunSuiteLike$$anonfun$runTests$1.apply(FunSuiteLike.scala:229)
      at org.scalatest.FunSuiteLike$$anonfun$runTests$1.apply(FunSuiteLike.scala:229)
      at org.scalatest.SuperEngine$$anonfun$traverseSubNodes$1$1.apply(Engine.scala:396)
      at org.scalatest.SuperEngine$$anonfun$traverseSubNodes$1$1.apply(Engine.scala:384)
      at scala.collection.immutable.List.foreach(List.scala:392)
      at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:384)
      at org.scalatest.SuperEngine.org$scalatest$SuperEngine$$runTestsInBranch(Engine.scala:379)
      at org.scalatest.SuperEngine.runTestsImpl(Engine.scala:461)
      at org.scalatest.FunSuiteLike$class.runTests(FunSuiteLike.scala:229)
      at org.scalatest.FunSuite.runTests(FunSuite.scala:1560)
      at org.scalatest.Suite$class.run(Suite.scala:1147)
      at org.scalatest.FunSuite.org$scalatest$FunSuiteLike$$super$run(FunSuite.scala:1560)
      at org.scalatest.FunSuiteLike$$anonfun$run$1.apply(FunSuiteLike.scala:233)
      at org.scalatest.FunSuiteLike$$anonfun$run$1.apply(FunSuiteLike.scala:233)
      at org.scalatest.SuperEngine.runImpl(Engine.scala:521)
      at org.scalatest.FunSuiteLike$class.run(FunSuiteLike.scala:233)
      at org.apache.spark.SparkFunSuite.org$scalatest$BeforeAndAfterAll$$super$run(SparkFunSuite.scala:52)
      at org.scalatest.BeforeAndAfterAll$class.liftedTree1$1(BeforeAndAfterAll.scala:213)
      at org.scalatest.BeforeAndAfterAll$class.run(BeforeAndAfterAll.scala:210)
      at org.apache.spark.SparkFunSuite.run(SparkFunSuite.scala:52)
      at org.scalatest.Suite$class.callExecuteOnSuite$1(Suite.scala:1210)
      at org.scalatest.Suite$$anonfun$runNestedSuites$1.apply(Suite.scala:1257)
      at org.scalatest.Suite$$anonfun$runNestedSuites$1.apply(Suite.scala:1255)
      at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
      at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186)
      at org.scalatest.Suite$class.runNestedSuites(Suite.scala:1255)
      at org.scalatest.tools.DiscoverySuite.runNestedSuites(DiscoverySuite.scala:30)
      at org.scalatest.Suite$class.run(Suite.scala:1144)
      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$1.apply(Runner.scala:1340)
      at org.scalatest.tools.Runner$$anonfun$doRunRunRunDaDoRunRun$1.apply(Runner.scala:1334)
      at scala.collection.immutable.List.foreach(List.scala:392)
      at org.scalatest.tools.Runner$.doRunRunRunDaDoRunRun(Runner.scala:1334)
      at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1011)
      at org.scalatest.tools.Runner$$anonfun$runOptionallyWithPassFailReporter$2.apply(Runner.scala:1010)
      at org.scalatest.tools.Runner$.withClassLoaderAndDispatchReporter(Runner.scala:1500)
      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)