== Results ==
!== Correct Answer - 27 == == Spark Answer - 26 ==
 struct<value:int> struct<value:int>
 [10] [10]
 [11] [11]
 [12] [12]
 [13] [13]
 [14] [14]
 [15] [15]
 [16] [16]
 [17] [17]
 [18] [18]
 [19] [19]
 [1] [1]
 [20] [20]
 [21] [21]
 [22] [22]
 [23] [23]
 [24] [24]
 [25] [25]
 [26] [26]
 [27] [27]
 [2] [2]
 [3] [3]
 [4] [4]
 [5] [5]
 [6] [6]
 [7] [7]
 [8] [8]
![9] 
 

== Progress ==
 AssertOnQuery(<condition>, )
 AddKafkaData(topics = Set(stress4, stress2, stress1, stress5, stress3), data = Range 0 until 7, message = )
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7]
 AddKafkaData(topics = Set(stress1, stress3, stress4, stress5), data = empty Range 7 until 7, message = Delete topic stress2)
 AddKafkaData(topics = Set(stress1, stress3, stress4, stress5), data = Range 7 until 8, message = Add partition)
 AddKafkaData(topics = Set(stress1, stress3, stress4, stress5), data = empty Range 8 until 8, message = Delete topic stress1)
 AddKafkaData(topics = Set(stress4, stress6, stress1, stress5, stress3), data = Range 8 until 9, message = Add topic stress7)
 AddKafkaData(topics = Set(stress1, stress3, stress4, stress5), data = Range 9 until 13, message = Delete topic stress6)
 AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = Range 13 until 20, message = Add topic stress9)
 AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = Range 20 until 27, message = )
 AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = empty Range 27 until 27, message = )
=> CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27]
 StopStream
 AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = Range 27 until 31, message = )
 StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@6871bc28,Map(),null)
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31]
 AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = Range 31 until 36, message = Add partition)
 AddKafkaData(topics = Set(stress1, stress3, stress5, stress8), data = Range 36 until 43, message = Delete topic stress4)
 AddKafkaData(topics = Set(stress1, stress3, stress5, stress8), data = Range 43 until 50, message = )
 AddKafkaData(topics = Set(stress1, stress3, stress5, stress8), data = Range 50 until 54, message = )
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54]
 AddKafkaData(topics = Set(stress1, stress3, stress5), data = Range 54 until 57, message = Delete topic stress8)
 AddKafkaData(topics = Set(stress1, stress3, stress5), data = Range 57 until 65, message = Add partition)
 AddKafkaData(topics = Set(stress1, stress5), data = Range 65 until 72, message = Delete topic stress3)
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72]
 StopStream
 StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@4ef8275f,Map(),null)
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72]
 StopStream
 AddKafkaData(topics = Set(stress1, stress5), data = Range 72 until 77, message = )
 AddKafkaData(topics = Set(stress1, stress5), data = Range 77 until 78, message = )
 StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@5d0a225c,Map(),null)
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78]
 AddKafkaData(topics = Set(stress1, stress5), data = Range 78 until 84, message = )
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84]
 StopStream
 StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@952f856,Map(),null)
 AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 84 until 85, message = Add topic stress11)
 AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 85 until 87, message = )
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84],[85],[86],[87]
 StopStream
 AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 87 until 90, message = )
 AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 90 until 94, message = Add partition)
 StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@6c2785a8,Map(),null)
 AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 94 until 103, message = )
 AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 103 until 106, message = )
 AddKafkaData(topics = Set(stress1, stress10), data = Range 106 until 111, message = Delete topic stress5)
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84],[85],[86],[87],[88],[89],[90],[91],[92],[93],[94],[95],[96],[97],[98],[99],[100],[101],[102],[103],[104],[105],[106],[107],[108],[109],[110],[111]
 StopStream
 AddKafkaData(topics = Set(stress1, stress10), data = Range 111 until 119, message = )
 AddKafkaData(topics = Set(stress1, stress10), data = Range 119 until 128, message = )
 StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@63ea95ac,Map(),null)
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84],[85],[86],[87],[88],[89],[90],[91],[92],[93],[94],[95],[96],[97],[98],[99],[100],[101],[102],[103],[104],[105],[106],[107],[108],[109],[110],[111],[112],[113],[114],[115],[116],[117],[118],[119],[120],[121],[122],[123],[124],[125],[126],[127],[128]
 StopStream
 AddKafkaData(topics = Set(stress1, stress10), data = Range 128 until 137, message = )
 AddKafkaData(topics = Set(stress1, stress10), data = Range 137 until 140, message = )
 AddKafkaData(topics = Set(stress1, stress10, stress12), data = Range 140 until 145, message = Add topic stress13)
 AddKafkaData(topics = Set(stress1, stress10, stress12), data = Range 145 until 152, message = )
 StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@6ffe434f,Map(),null)
 CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84],[85],[86],[87],[88],[89],[90],[91],[92],[93],[94],[95],[96],[97],[98],[99],[100],[101],[102],[103],[104],[105],[106],[107],[108],[109],[110],[111],[112],[113],[114],[115],[116],[117],[118],[119],[120],[121],[122],[123],[124],[125],[126],[127],[128],[129],[130],[131],[132],[133],[134],[135],[136],[137],[138],[139],[140],[141],[142],[143],[144],[145],[146],[147],[148],[149],[150],[151],[152]

== Stream ==
Output Mode: Append
Stream state: {KafkaV2[SubscribePattern[stress.*]]: {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress8":{"2":0,"4":0,"1":0,"3":0,"0":0},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":3,"5":2,"4":1,"1":2,"3":2,"0":3},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}}
Thread state: alive
Thread stack trace: java.lang.Thread.sleep(Native Method)
org.apache.spark.sql.execution.streaming.MicroBatchExecution.$anonfun$runActivatedStream$1(MicroBatchExecution.scala:230)
org.apache.spark.sql.execution.streaming.MicroBatchExecution$$Lambda$2279/1665789396.apply$mcZ$sp(Unknown Source)
org.apache.spark.sql.execution.streaming.ProcessingTimeExecutor.execute(TriggerExecutor.scala:56)
org.apache.spark.sql.execution.streaming.MicroBatchExecution.runActivatedStream(MicroBatchExecution.scala:175)
org.apache.spark.sql.execution.streaming.StreamExecution.org$apache$spark$sql$execution$streaming$StreamExecution$$runStream(StreamExecution.scala:332)
org.apache.spark.sql.execution.streaming.StreamExecution$$anon$1.run(StreamExecution.scala:244)


== Sink ==
0: 
1: [3] [1] [2]
2: [5] [6] [7] [4]
3: 
4: 
5: [8]
6: 
7: [10] [11]
8: [12] [13]
9: [16] [19] [14] [17] [20] [15] [18]
10: [23] [26] [25] [21] [27] [24] [22]


== Plan ==
== Parsed Logical Plan ==
WriteToDataSourceV2 org.apache.spark.sql.execution.streaming.sources.MicroBatchWrite@f823337
+- SerializeFromObject [input[0, int, false] AS value#14718]
 +- MapElements org.apache.spark.sql.kafka010.KafkaSourceStressSuite$$Lambda$5799/162360875@3219307b, class scala.Tuple2, [StructField(_1,StringType,true), StructField(_2,StringType,true)], obj#14717: int
 +- DeserializeToObject newInstance(class scala.Tuple2), obj#14716: scala.Tuple2
 +- Project [cast(key#14692 as string) AS key#14706, cast(value#14693 as string) AS value#14707]
 +- StreamingDataSourceV2Relation [key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698], org.apache.spark.sql.kafka010.KafkaSourceProvider$KafkaScan@42b9a351, KafkaV2[SubscribePattern[stress.*]], {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":2,"5":0,"4":0,"1":1,"3":1,"0":2},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}, {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress8":{"2":0,"4":0,"1":0,"3":0,"0":0},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":3,"5":2,"4":1,"1":2,"3":2,"0":3},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}

== Analyzed Logical Plan ==

WriteToDataSourceV2 org.apache.spark.sql.execution.streaming.sources.MicroBatchWrite@f823337
+- SerializeFromObject [input[0, int, false] AS value#14718]
 +- MapElements org.apache.spark.sql.kafka010.KafkaSourceStressSuite$$Lambda$5799/162360875@3219307b, class scala.Tuple2, [StructField(_1,StringType,true), StructField(_2,StringType,true)], obj#14717: int
 +- DeserializeToObject newInstance(class scala.Tuple2), obj#14716: scala.Tuple2
 +- Project [cast(key#14692 as string) AS key#14706, cast(value#14693 as string) AS value#14707]
 +- StreamingDataSourceV2Relation [key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698], org.apache.spark.sql.kafka010.KafkaSourceProvider$KafkaScan@42b9a351, KafkaV2[SubscribePattern[stress.*]], {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":2,"5":0,"4":0,"1":1,"3":1,"0":2},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}, {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress8":{"2":0,"4":0,"1":0,"3":0,"0":0},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":3,"5":2,"4":1,"1":2,"3":2,"0":3},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}

== Optimized Logical Plan ==
WriteToDataSourceV2 org.apache.spark.sql.execution.streaming.sources.MicroBatchWrite@f823337
+- SerializeFromObject [input[0, int, false] AS value#14718]
 +- MapElements org.apache.spark.sql.kafka010.KafkaSourceStressSuite$$Lambda$5799/162360875@3219307b, class scala.Tuple2, [StructField(_1,StringType,true), StructField(_2,StringType,true)], obj#14717: int
 +- DeserializeToObject newInstance(class scala.Tuple2), obj#14716: scala.Tuple2
 +- Project [cast(key#14692 as string) AS key#14706, cast(value#14693 as string) AS value#14707]
 +- StreamingDataSourceV2Relation [key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698], org.apache.spark.sql.kafka010.KafkaSourceProvider$KafkaScan@42b9a351, KafkaV2[SubscribePattern[stress.*]], {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":2,"5":0,"4":0,"1":1,"3":1,"0":2},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}, {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress8":{"2":0,"4":0,"1":0,"3":0,"0":0},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":3,"5":2,"4":1,"1":2,"3":2,"0":3},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}

== Physical Plan ==
WriteToDataSourceV2 org.apache.spark.sql.execution.streaming.sources.MicroBatchWrite@f823337
+- *(1) SerializeFromObject [input[0, int, false] AS value#14718]
 +- *(1) MapElements org.apache.spark.sql.kafka010.KafkaSourceStressSuite$$Lambda$5799/162360875@3219307b, obj#14717: int
 +- *(1) DeserializeToObject newInstance(class scala.Tuple2), obj#14716: scala.Tuple2
 +- *(1) Project [cast(key#14692 as string) AS key#14706, cast(value#14693 as string) AS value#14707]
 +- *(1) Project [key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698]
 +- *(1) MicroBatchScan[key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698] class org.apache.spark.sql.kafka010.KafkaSourceProvider$KafkaScan

 

org.scalatest.exceptions.TestFailedException:
== Results ==
!== Correct Answer - 27 == == Spark Answer - 26 ==
struct<value:int> struct<value:int>
[10] [10]
[11] [11]
[12] [12]
[13] [13]
[14] [14]
[15] [15]
[16] [16]
[17] [17]
[18] [18]
[19] [19]
[1] [1]
[20] [20]
[21] [21]
[22] [22]
[23] [23]
[24] [24]
[25] [25]
[26] [26]
[27] [27]
[2] [2]
[3] [3]
[4] [4]
[5] [5]
[6] [6]
[7] [7]
[8] [8]
![9]
== Progress ==
AssertOnQuery(<condition>, )
AddKafkaData(topics = Set(stress4, stress2, stress1, stress5, stress3), data = Range 0 until 7, message = )
CheckAnswer: [1],[2],[3],[4],[5],[6],[7]
AddKafkaData(topics = Set(stress1, stress3, stress4, stress5), data = empty Range 7 until 7, message = Delete topic stress2)
AddKafkaData(topics = Set(stress1, stress3, stress4, stress5), data = Range 7 until 8, message = Add partition)
AddKafkaData(topics = Set(stress1, stress3, stress4, stress5), data = empty Range 8 until 8, message = Delete topic stress1)
AddKafkaData(topics = Set(stress4, stress6, stress1, stress5, stress3), data = Range 8 until 9, message = Add topic stress7)
AddKafkaData(topics = Set(stress1, stress3, stress4, stress5), data = Range 9 until 13, message = Delete topic stress6)
AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = Range 13 until 20, message = Add topic stress9)
AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = Range 20 until 27, message = )
AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = empty Range 27 until 27, message = )
=> CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27]
StopStream
AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = Range 27 until 31, message = )
StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@6871bc28,Map(),null)
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31]
AddKafkaData(topics = Set(stress4, stress8, stress1, stress5, stress3), data = Range 31 until 36, message = Add partition)
AddKafkaData(topics = Set(stress1, stress3, stress5, stress8), data = Range 36 until 43, message = Delete topic stress4)
AddKafkaData(topics = Set(stress1, stress3, stress5, stress8), data = Range 43 until 50, message = )
AddKafkaData(topics = Set(stress1, stress3, stress5, stress8), data = Range 50 until 54, message = )
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54]
AddKafkaData(topics = Set(stress1, stress3, stress5), data = Range 54 until 57, message = Delete topic stress8)
AddKafkaData(topics = Set(stress1, stress3, stress5), data = Range 57 until 65, message = Add partition)
AddKafkaData(topics = Set(stress1, stress5), data = Range 65 until 72, message = Delete topic stress3)
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72]
StopStream
StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@4ef8275f,Map(),null)
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72]
StopStream
AddKafkaData(topics = Set(stress1, stress5), data = Range 72 until 77, message = )
AddKafkaData(topics = Set(stress1, stress5), data = Range 77 until 78, message = )
StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@5d0a225c,Map(),null)
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78]
AddKafkaData(topics = Set(stress1, stress5), data = Range 78 until 84, message = )
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84]
StopStream
StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@952f856,Map(),null)
AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 84 until 85, message = Add topic stress11)
AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 85 until 87, message = )
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84],[85],[86],[87]
StopStream
AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 87 until 90, message = )
AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 90 until 94, message = Add partition)
StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@6c2785a8,Map(),null)
AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 94 until 103, message = )
AddKafkaData(topics = Set(stress1, stress5, stress10), data = Range 103 until 106, message = )
AddKafkaData(topics = Set(stress1, stress10), data = Range 106 until 111, message = Delete topic stress5)
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84],[85],[86],[87],[88],[89],[90],[91],[92],[93],[94],[95],[96],[97],[98],[99],[100],[101],[102],[103],[104],[105],[106],[107],[108],[109],[110],[111]
StopStream
AddKafkaData(topics = Set(stress1, stress10), data = Range 111 until 119, message = )
AddKafkaData(topics = Set(stress1, stress10), data = Range 119 until 128, message = )
StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@63ea95ac,Map(),null)
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84],[85],[86],[87],[88],[89],[90],[91],[92],[93],[94],[95],[96],[97],[98],[99],[100],[101],[102],[103],[104],[105],[106],[107],[108],[109],[110],[111],[112],[113],[114],[115],[116],[117],[118],[119],[120],[121],[122],[123],[124],[125],[126],[127],[128]
StopStream
AddKafkaData(topics = Set(stress1, stress10), data = Range 128 until 137, message = )
AddKafkaData(topics = Set(stress1, stress10), data = Range 137 until 140, message = )
AddKafkaData(topics = Set(stress1, stress10, stress12), data = Range 140 until 145, message = Add topic stress13)
AddKafkaData(topics = Set(stress1, stress10, stress12), data = Range 145 until 152, message = )
StartStream(ProcessingTime(0),org.apache.spark.util.SystemClock@6ffe434f,Map(),null)
CheckAnswer: [1],[2],[3],[4],[5],[6],[7],[8],[9],[10],[11],[12],[13],[14],[15],[16],[17],[18],[19],[20],[21],[22],[23],[24],[25],[26],[27],[28],[29],[30],[31],[32],[33],[34],[35],[36],[37],[38],[39],[40],[41],[42],[43],[44],[45],[46],[47],[48],[49],[50],[51],[52],[53],[54],[55],[56],[57],[58],[59],[60],[61],[62],[63],[64],[65],[66],[67],[68],[69],[70],[71],[72],[73],[74],[75],[76],[77],[78],[79],[80],[81],[82],[83],[84],[85],[86],[87],[88],[89],[90],[91],[92],[93],[94],[95],[96],[97],[98],[99],[100],[101],[102],[103],[104],[105],[106],[107],[108],[109],[110],[111],[112],[113],[114],[115],[116],[117],[118],[119],[120],[121],[122],[123],[124],[125],[126],[127],[128],[129],[130],[131],[132],[133],[134],[135],[136],[137],[138],[139],[140],[141],[142],[143],[144],[145],[146],[147],[148],[149],[150],[151],[152]
== Stream ==
Output Mode: Append
Stream state: {KafkaV2[SubscribePattern[stress.*]]: {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress8":{"2":0,"4":0,"1":0,"3":0,"0":0},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":3,"5":2,"4":1,"1":2,"3":2,"0":3},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}}
Thread state: alive
Thread stack trace: java.lang.Thread.sleep(Native Method)
org.apache.spark.sql.execution.streaming.MicroBatchExecution.$anonfun$runActivatedStream$1(MicroBatchExecution.scala:230)
org.apache.spark.sql.execution.streaming.MicroBatchExecution$$Lambda$2279/1665789396.apply$mcZ$sp(Unknown Source)
org.apache.spark.sql.execution.streaming.ProcessingTimeExecutor.execute(TriggerExecutor.scala:56)
org.apache.spark.sql.execution.streaming.MicroBatchExecution.runActivatedStream(MicroBatchExecution.scala:175)
org.apache.spark.sql.execution.streaming.StreamExecution.org$apache$spark$sql$execution$streaming$StreamExecution$$runStream(StreamExecution.scala:332)
org.apache.spark.sql.execution.streaming.StreamExecution$$anon$1.run(StreamExecution.scala:244)
== Sink ==
0:
1: [3] [1] [2]
2: [5] [6] [7] [4]
3:
4:
5: [8]
6:
7: [10] [11]
8: [12] [13]
9: [16] [19] [14] [17] [20] [15] [18]
10: [23] [26] [25] [21] [27] [24] [22]
== Plan ==
== Parsed Logical Plan ==
WriteToDataSourceV2 org.apache.spark.sql.execution.streaming.sources.MicroBatchWrite@f823337
+- SerializeFromObject [input[0, int, false] AS value#14718]
+- MapElements org.apache.spark.sql.kafka010.KafkaSourceStressSuite$$Lambda$5799/162360875@3219307b, class scala.Tuple2, [StructField(_1,StringType,true), StructField(_2,StringType,true)], obj#14717: int
+- DeserializeToObject newInstance(class scala.Tuple2), obj#14716: scala.Tuple2
+- Project [cast(key#14692 as string) AS key#14706, cast(value#14693 as string) AS value#14707]
+- StreamingDataSourceV2Relation [key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698], org.apache.spark.sql.kafka010.KafkaSourceProvider$KafkaScan@42b9a351, KafkaV2[SubscribePattern[stress.*]], {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":2,"5":0,"4":0,"1":1,"3":1,"0":2},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}, {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress8":{"2":0,"4":0,"1":0,"3":0,"0":0},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":3,"5":2,"4":1,"1":2,"3":2,"0":3},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}
== Analyzed Logical Plan ==
WriteToDataSourceV2 org.apache.spark.sql.execution.streaming.sources.MicroBatchWrite@f823337
+- SerializeFromObject [input[0, int, false] AS value#14718]
+- MapElements org.apache.spark.sql.kafka010.KafkaSourceStressSuite$$Lambda$5799/162360875@3219307b, class scala.Tuple2, [StructField(_1,StringType,true), StructField(_2,StringType,true)], obj#14717: int
+- DeserializeToObject newInstance(class scala.Tuple2), obj#14716: scala.Tuple2
+- Project [cast(key#14692 as string) AS key#14706, cast(value#14693 as string) AS value#14707]
+- StreamingDataSourceV2Relation [key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698], org.apache.spark.sql.kafka010.KafkaSourceProvider$KafkaScan@42b9a351, KafkaV2[SubscribePattern[stress.*]], {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":2,"5":0,"4":0,"1":1,"3":1,"0":2},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}, {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress8":{"2":0,"4":0,"1":0,"3":0,"0":0},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":3,"5":2,"4":1,"1":2,"3":2,"0":3},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}
== Optimized Logical Plan ==
WriteToDataSourceV2 org.apache.spark.sql.execution.streaming.sources.MicroBatchWrite@f823337
+- SerializeFromObject [input[0, int, false] AS value#14718]
+- MapElements org.apache.spark.sql.kafka010.KafkaSourceStressSuite$$Lambda$5799/162360875@3219307b, class scala.Tuple2, [StructField(_1,StringType,true), StructField(_2,StringType,true)], obj#14717: int
+- DeserializeToObject newInstance(class scala.Tuple2), obj#14716: scala.Tuple2
+- Project [cast(key#14692 as string) AS key#14706, cast(value#14693 as string) AS value#14707]
+- StreamingDataSourceV2Relation [key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698], org.apache.spark.sql.kafka010.KafkaSourceProvider$KafkaScan@42b9a351, KafkaV2[SubscribePattern[stress.*]], {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":2,"5":0,"4":0,"1":1,"3":1,"0":2},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}, {"stress5":{"2":3,"5":0,"4":2,"1":2,"3":3,"6":0,"0":2},"stress8":{"2":0,"4":0,"1":0,"3":0,"0":0},"stress1":{"2":2,"1":3,"0":7},"stress4":{"2":3,"5":2,"4":1,"1":2,"3":2,"0":3},"stress3":{"2":2,"4":1,"1":3,"3":1,"0":2}}
== Physical Plan ==
WriteToDataSourceV2 org.apache.spark.sql.execution.streaming.sources.MicroBatchWrite@f823337
+- *(1) SerializeFromObject [input[0, int, false] AS value#14718]
+- *(1) MapElements org.apache.spark.sql.kafka010.KafkaSourceStressSuite$$Lambda$5799/162360875@3219307b, obj#14717: int
+- *(1) DeserializeToObject newInstance(class scala.Tuple2), obj#14716: scala.Tuple2
+- *(1) Project [cast(key#14692 as string) AS key#14706, cast(value#14693 as string) AS value#14707]
+- *(1) Project [key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698]
+- *(1) MicroBatchScan[key#14692, value#14693, topic#14694, partition#14695, offset#14696L, timestamp#14697, timestampType#14698] class org.apache.spark.sql.kafka010.KafkaSourceProvider$KafkaScan
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.streaming.StreamTest.failTest$1(StreamTest.scala:444)
at org.apache.spark.sql.streaming.StreamTest.$anonfun$testStream$53(StreamTest.scala:725)
at scala.Option.foreach(Option.scala:274)
at org.apache.spark.sql.streaming.StreamTest.executeAction$1(StreamTest.scala:725)
at org.apache.spark.sql.streaming.StreamTest.$anonfun$testStream$56(StreamTest.scala:770)
at org.apache.spark.sql.streaming.StreamTest.$anonfun$testStream$56$adapted(StreamTest.scala:757)
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 org.apache.spark.sql.streaming.StreamTest.liftedTree1$1(StreamTest.scala:757)
at org.apache.spark.sql.streaming.StreamTest.testStream(StreamTest.scala:756)
at org.apache.spark.sql.streaming.StreamTest.testStream$(StreamTest.scala:326)
at org.apache.spark.sql.kafka010.KafkaSourceTest.testStream(KafkaMicroBatchSourceSuite.scala:50)
at org.apache.spark.sql.streaming.StreamTest.runStressTest(StreamTest.scala:868)
at org.apache.spark.sql.streaming.StreamTest.runStressTest$(StreamTest.scala:820)
at org.apache.spark.sql.kafka010.KafkaSourceTest.runStressTest(KafkaMicroBatchSourceSuite.scala:50)
at org.apache.spark.sql.kafka010.KafkaSourceStressSuite.$anonfun$new$137(KafkaMicroBatchSourceSuite.scala:1652)
at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
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.SparkFunSuite.runTest(SparkFunSuite.scala:56)
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.SparkFunSuite.run(SparkFunSuite.scala:56)
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)