rkrzewski / akka-cluster-etcd

Akka cluster management using etcd
Other
70 stars 14 forks source link

Websocket connection is terminated after 1 minute of no activity #37

Closed rkrzewski closed 8 years ago

rkrzewski commented 8 years ago
frontend_1 | [ERROR] [12/05/2015 23:00:23.491] [Main-akka.actor.default-dispatcher-20] [akka.tcp://Main@172.17.0.3:2552/user/StreamSupervisor-3/flow-619-25-actorSubscriberSink] Incoming stream terminated with error
frontend_1 | java.util.concurrent.TimeoutException: No elements passed in the last 1 minute.
frontend_1 |    at akka.stream.impl.Timers$IdleBidi$$anon$4.onTimer(Timers.scala:145)
frontend_1 |    at akka.stream.stage.TimerGraphStageLogic.akka$stream$stage$TimerGraphStageLogic$$onInternalTimer(GraphStage.scala:939)
frontend_1 |    at akka.stream.stage.TimerGraphStageLogic$$anonfun$akka$stream$stage$TimerGraphStageLogic$$getTimerAsyncCallback$1.apply(GraphStage.scala:929)
frontend_1 |    at akka.stream.stage.TimerGraphStageLogic$$anonfun$akka$stream$stage$TimerGraphStageLogic$$getTimerAsyncCallback$1.apply(GraphStage.scala:929)
frontend_1 |    at akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:357)
frontend_1 |    at akka.actor.Actor$class.aroundReceive(Actor.scala:480)
frontend_1 |    at akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:292)
frontend_1 |    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
frontend_1 |    at akka.actor.ActorCell.invoke(ActorCell.scala:495)
frontend_1 |    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
frontend_1 |    at akka.dispatch.Mailbox.run(Mailbox.scala:224)
frontend_1 |    at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
frontend_1 |    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
frontend_1 |    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
frontend_1 |    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
frontend_1 |    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

It seems that a stream of keepalive messages need to be merged into websocket handler ouput. There are two things that bother me though:

rkrzewski commented 8 years ago

Fixed.