Hi all I was finally able to figure out why this streaming appeared stuck. The reason was that I was running out of workers in my standalone deployment of Spark. There was no feedback in the logs which is why it took a little time for me to figure out.
However, now I am trying to run the same in yarn-client mode and this is again giving the same problem. Is it possible to run out of workers in YARN mode as well? If so, how can I figure that out? Thanks, Aniket On 19 September 2014 18:07, Aniket Bhatnagar <aniket.bhatna...@gmail.com> wrote: > Apologies in delay in getting back on this. It seems the Kinesis example > does not run on Spark 1.1.0 even when it is built using kinesis-acl profile > because of a dependency conflict in http client (same issue as > http://mail-archives.apache.org/mod_mbox/spark-dev/201409.mbox/%3ccajob8btdxks-7-spjj5jmnw0xsnrjwdpcqqtjht1hun6j4z...@mail.gmail.com%3E). > I had to add a later version of http client in kinesis-acl profile to make > it run. Then, the Kinesis example sets master as local so it does not > honour the MASTER environment variable as other examples do. Once I was > able to resolve these issues, I was finally able to reproduce the issue. > The example works fine in local mode but does not do anything when receiver > runs in remote workers. > > Spark streaming does not report any blocks received from the receivers > even though I can see the following lines in the app logs (I modified the > debug line to print size as well): > > 14/09/19 12:30:18 DEBUG ReceiverSupervisorImpl: Pushed block > input-0-1411129664668 in 15 ms > 14/09/19 12:30:18 DEBUG ReceiverSupervisorImpl: Reported block > input-0-1411129664668 of size 1 > > Here are the screenshots of Spark admin: http://imgur.com/a/gWKYm > > I also ran other examples (custom receiver, etc) in both local and > distributed mode and they seem to be working fine. > > Any ideas? > > Thanks, > Aniket > > On 12 September 2014 02:49, Tathagata Das <tathagata.das1...@gmail.com> > wrote: > >> This is very puzzling, given that this works in the local mode. >> >> Does running the kinesis example work with your spark-submit? >> >> >> https://github.com/apache/spark/blob/master/extras/kinesis-asl/src/main/scala/org/apache/spark/examples/streaming/KinesisWordCountASL.scala >> >> The instructions are present in the streaming guide. >> https://github.com/apache/spark/blob/master/docs/streaming-kinesis-integration.md >> >> If that does not work on cluster, then I would see the streaming UI for >> the number records that are being received, and the stages page for whether >> jobs are being executed for every batch or not. Can tell use whether that >> is working well. >> >> Also ccing, chris fregly who wrote Kinesis integration. >> >> TD >> >> >> >> >> On Thu, Sep 11, 2014 at 4:51 AM, Aniket Bhatnagar < >> aniket.bhatna...@gmail.com> wrote: >> >>> Hi all >>> >>> I am trying to run kinesis spark streaming application on a standalone >>> spark cluster. The job works find in local mode but when I submit it (using >>> spark-submit), it doesn't do anything. I enabled logs >>> for org.apache.spark.streaming.kinesis package and I regularly get the >>> following in worker logs: >>> >>> 14/09/11 11:41:25 DEBUG KinesisRecordProcessor: Stored: Worker >>> x.x.x.x:b88a9210-cbb9-4c31-8da7-35fd92faba09 stored 34 records for shardId >>> shardId-000000000000 >>> 14/09/11 11:41:25 DEBUG KinesisRecordProcessor: Stored: Worker >>> x.x.x.x:b2e9c20f-470a-44fe-a036-630c776919fb stored 31 records for shardId >>> shardId-000000000001 >>> >>> But the job does not perform any operations defined on DStream. To >>> investigate this further, I changed the kinesis-asl's KinesisUtils to >>> perform the following computation on the DStream created >>> using ssc.receiverStream(new KinesisReceiver...): >>> >>> stream.count().foreachRDD(rdd => rdd.foreach(tuple => logInfo("Emitted " >>> + tuple))) >>> >>> Even the above line does not results in any corresponding log entries >>> both in driver and worker logs. The only relevant logs that I could find in >>> driver logs are: >>> 14/09/11 11:40:58 INFO DAGScheduler: Stage 2 (foreach at >>> KinesisUtils.scala:68) finished in 0.398 s >>> 14/09/11 11:40:58 INFO SparkContext: Job finished: foreach at >>> KinesisUtils.scala:68, took 4.926449985 s >>> 14/09/11 11:40:58 INFO JobScheduler: Finished job streaming job >>> 1410435653000 ms.0 from job set of time 1410435653000 ms >>> 14/09/11 11:40:58 INFO JobScheduler: Starting job streaming job >>> 1410435653000 ms.1 from job set of time 1410435653000 ms >>> 14/09/11 11:40:58 INFO SparkContext: Starting job: foreach at >>> KinesisUtils.scala:68 >>> 14/09/11 11:40:58 INFO DAGScheduler: Registering RDD 13 (union at >>> DStream.scala:489) >>> 14/09/11 11:40:58 INFO DAGScheduler: Got job 3 (foreach at >>> KinesisUtils.scala:68) with 2 output partitions (allowLocal=false) >>> 14/09/11 11:40:58 INFO DAGScheduler: Final stage: Stage 5(foreach at >>> KinesisUtils.scala:68) >>> >>> After the above logs, nothing shows up corresponding to KinesisUtils. I >>> am out of ideas on this one and any help on this would greatly appreciated. >>> >>> Thanks, >>> Aniket >>> >> >> >