`

storm Async loop died! & reconnect

阅读更多

storm 在有supervisor重启的时候,topology报错,导致所有spout不消费:

 

2015-07-15T09:48:26.470+0800 b.s.util [ERROR] Async loop died!
java.lang.RuntimeException: java.lang.RuntimeException: Client is being closed, and does not take requests any more
        at backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:128) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.utils.DisruptorQueue.consumeBatchWhenAvailable(DisruptorQueue.java:99) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.disruptor$consume_batch_when_available.invoke(disruptor.clj:80) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.disruptor$consume_loop_STAR_$fn__1460.invoke(disruptor.clj:94) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.util$async_loop$fn__464.invoke(util.clj:463) ~[storm-core-0.9.3.jar:0.9.3]
        at clojure.lang.AFn.run(AFn.java:24) [clojure-1.5.1.jar:na]
        at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75]
Caused by: java.lang.RuntimeException: Client is being closed, and does not take requests any more
        at backtype.storm.messaging.netty.Client.send(Client.java:185) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.utils.TransferDrainer.send(TransferDrainer.java:54) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.daemon.worker$mk_transfer_tuples_handler$fn__3730$fn__3731.invoke(worker.clj:330) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.daemon.worker$mk_transfer_tuples_handler$fn__3730.invoke(worker.clj:328) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.disruptor$clojure_handler$reify__1447.onEvent(disruptor.clj:58) ~[storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.java:125) ~[storm-core-0.9.3.jar:0.9.3]
        ... 6 common frames omitted
2015-07-15T09:48:26.507+0800 b.s.util [ERROR] Halting process: ("Async loop died!")
java.lang.RuntimeException: ("Async loop died!")
        at backtype.storm.util$exit_process_BANG_.doInvoke(util.clj:325) [storm-core-0.9.3.jar:0.9.3]
        at clojure.lang.RestFn.invoke(RestFn.java:423) [clojure-1.5.1.jar:na]
        at backtype.storm.disruptor$consume_loop_STAR_$fn__1458.invoke(disruptor.clj:92) [storm-core-0.9.3.jar:0.9.3]
        at backtype.storm.util$async_loop$fn__464.invoke(util.clj:473) [storm-core-0.9.3.jar:0.9.3]
        at clojure.lang.AFn.run(AFn.java:24) [clojure-1.5.1.jar:na]
        at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75]

 在日志上边,大量reconnection

 Reconnect started for Netty-Client-hostxx/ip:6703... [91]
 Reconnect started for Netty-Client-hostxx/ip:6703... [92]
 Reconnect started for Netty-Client-hostxx/ip:6703... [93]
 Reconnect started for Netty-Client-hostxx/ip:6703... [94]
 Reconnect started for Netty-Client-hostxx/ip:6703... [95]
 Reconnect started for Netty-Client-hostxx/ip:6703... [96]
 Reconnect started for Netty-Client-hostxx/ip:6703... [97]
 Reconnect started for Netty-Client-hostxx/ip:6703... [98]
 Reconnect started for Netty-Client-hostxx/ip:6703... [99]

 登录到ip,发现6703端口有两个worker,导致一个work端口被占用(之前supervisor重启work没有关闭,bug,待解决)

解决:删除重复的端口的worker,让topology自动用其他work

 

 

 

分享到:
评论

相关推荐

    Asyncloop异步迭代大数据并且没有阻塞事件循环

    Async loop异步迭代大数据并且没有阻塞事件循环

    QQ城市查询助手+两个免费接口

    给你们接口,给点评分呀 http://yundong.qxxxxxxxnter/guest?_wv=2172899&asyncMode=1&uin=QQ号 只在QQ中打开 http://city2.aitxxxxxxn/?qq=QQ号 这个可以在网页打开

    TurboPower Async Professional(重新上传)

    We are finally done with release candidates. The components seem to be quite stable now. This release contains a few minor enhancements. Enhancements ------------ ShowException is no long used to ...

    profiled-chan

    ( require '[clojure.core.async :refer [chan >!! <!! thread]] '[profiled-chan.api :refer [profiled-chan recorders]]) ( let [chan ( profiled-chan ( chan )) writer ( thread ( dotimes [n 1000 ] ( >...

    QQ数据关联查询

    通过群资料查询他人姓名。 谨慎使用。

    react-script-async:一种简单的加载方式 tags through render props

    npm install react-script-async 或者 yarn add react-script-async 这个怎么运作 该库使用渲染道具来渲染某些元素,无论是否加载了脚本。 通常会传递给常规[removed]标记的所有道具都将传递。 import React from ...

    You Don't Know JS- Async & Performance(O'Reilly,2015)

    Like other books in this series, You Don't Know JS: Async & Performance dives into trickier parts of the language that many JavaScript programmers simply avoid. Armed with this knowledge, you can ...

    ketu:具有core.async集成的Clojure Kafka客户端

    最小的例子消费来自kafka的名称字符串,并通过所有渠道为该名称产生一个问候字符串,将其返回到kafka中: ( ns example ( :require [clojure.core.async :refer [chan close! <!! >!!]] [ketu.async.source :a

    python async with和async for的使用

    网上async with和async for的中文资料比较少,我把PEP 492中的官方陈述翻译一下。 异步上下文管理器”async with” 异步上下文管理器指的是在enter和exit方法处能够暂停执行的上下文管理器。 为了实现这样的功能,...

    opencv_async_opencv_async_

    Visual Studio C++ Opencv ASYNC

    jscex.async.js

    var drawAsync = eval&...Jscex.compile("async", function () { while (true) { that.context.drawImage(that.offCanvas, 0, 0,that.canvas.width,that.canvas.height); $await(Jscex.Async.sleep(50)); } }))

    Android Async-Http Demo

    Android Async-Http Demo

    Async32 for delphi

    很好用的Async32,不用多说,你用了就知道啦。

    You Don't Know JS- Async & Performance

    You Don't Know JS- Async & Performance

    Kyle Simpson You Dont Know JS Async & Performance

    Kyle Simpson You Dont Know JS Async & Performance

    a-chat:在async-std之上实现的简单聊天

    在本教程中,我们将在async-std之上实现异步聊天。 规格 聊天使用基于TCP的简单文本协议。 该协议包含utf-8消息,以\n分隔。 客户端连接到服务器,并作为第一行发送登录信息。 之后,客户端可以使用以下语法将消息...

    You Don’t Know JS Async & Performance

    Title: You Don't Know JS: Async & Performance Author: Kyle Simpson Language: English Published by: O’Reilly Media Publication Month: Mar 2015 Format: true PDF

    Async/Await替代Promise的6个理由

    Node.js 7.6 已经支持 async/await 了,如果你还没有试过,这篇博客将告诉你为什么要用它。 Async/Await 简介 对于从未听说过 async/await 的朋友,下面是简介: async/await 是写异步代码的新方式,以前的方法有回...

    create-your-blog

    建立您的网志 创建一个新的Next.js应用 npx create-next-app 添加siteconfig.json { ... " description " : " This ...export const getStaticProps = async ( ) => { const configData = await import ( "../siteconfi

    async-executor:异步执行器

    use async_executor :: Executor; use futures_lite :: future; // Create a new executor. let ex = Executor :: new (); // Spawn a task. let task = ex. spawn ( async { println! ( "Hello world" ); }); // ...

Global site tag (gtag.js) - Google Analytics