Thanks for your comments.

*networkaddress.cache.ttl *would be more appropriate. It's not the failure
we want to cache but the successful resolutions. Using this via
worker.childopts could have side effects on the workers : some of my bolts
fetch webpages, other do IP resolution. Storing the localhost info in a
String once and for all would be cleaner I think.

I know nothing of Clojure so submitting a patch would be an issue. Will
play with networkaddress.cache.ttl as a short term solution.

Thanks




On 31 March 2014 23:10, David Miller <[email protected]> wrote:

>
> Wouldn’t the JVM property “networkaddress.cache.negative.ttl” do this
> already ?
>
> http://docs.oracle.com/javase/7/docs/technotes/guides/net/properties.html
>
>
> On 1 Apr 2014, at 7:07 am, Bobby Evans <[email protected]> wrote:
>
> > It should be possible to store/cache it. Please file a JIRA on it.  No
> > guarantee on when it would get fixed, unless you want to submit a patch
> > with it too.
> >
> > ‹Bobby
> >
> > On 3/27/14, 9:17 AM, "Julien Nioche" <[email protected]>
> wrote:
> >
> >> Hi,
> >>
> >> I am getting loads of exceptions such as :
> >>
> >> java.lang.RuntimeException: java.net.UnknownHostException: $MYSERVER:
> >> $MYSERVER
> >>      at
> >>
> backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.ja
> >> va:107)
> >>      at
> >> backtype.storm.utils.DisruptorQueue.consumeBatch(DisruptorQueue.java:66)
> >>      at backtype.storm.disruptor$consume_batch.invoke(disruptor.clj:74)
> >>      at
> >>
> backtype.storm.daemon.executor$eval3848$fn__3849$fn__3864$fn__3893.invoke(
> >> executor.clj:539)
> >>      at backtype.storm.util$async_loop$fn__384.invoke(util.clj:433)
> >>      at clojure.lang.AFn.run(AFn.java:24)
> >>      at java.lang.Thread.run(Thread.java:744)
> >> Caused by: java.net.UnknownHostException: $MYSERVER: $MYSERVER
> >>
> >>      at java.net.InetAddress.getLocalHost(InetAddress.java:1473)
> >>      at
> backtype.storm.daemon.executor$metrics_tick.invoke(executor.clj:279)
> >>      at
> >>
> backtype.storm.daemon.executor$eval3848$fn__3849$tuple_action_fn__3855.inv
> >> oke(executor.clj:435)
> >>      at
> >>
> backtype.storm.daemon.executor$mk_task_receiver$fn__3839.invoke(executor.c
> >> lj:401)
> >>      at
> >>
> backtype.storm.disruptor$clojure_handler$reify__1560.onEvent(disruptor.clj
> >> :58)
> >>      at
> >>
> backtype.storm.utils.DisruptorQueue.consumeBatchToCursor(DisruptorQueue.ja
> >> va:104)
> >>      ... 6 more
> >> Caused by: java.net.UnknownHostException: ns316721.ip-37-187-131.eu
> >>      at java.net.Inet4AddressImpl.lookupAllHostAddr(Native Method)
> >>      at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:901)
> >>      at
> >> java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1293)
> >>      at java.net.InetAddress.getLocalHost(InetAddress.java:1469)
> >>      ... 11 more
> >>
> >> where $MYSERVER is the hostname of the machine where Storm is running.
> >> These exceptions happen at random and could be due to an issue with
> Bind,
> >> which for some reason fails to return the information about the
> localhost.
> >>
> >>
> >> From what I understand from the code in [1], this happens when
> processing
> >> the metrics-ticks. Would there be a way to store the information about
> the
> >> localhost once and for all instead of asking for it every time and if
> so,
> >> how would you do that in Clojure?
> >>
> >> Thanks
> >>
> >> Julien
> >>
> >>
> >> [1]
> >>
> https://github.com/apache/incubator-storm/blob/master/storm-core/src/clj/b
> >> acktype/storm/daemon/executor.clj#L278
> >>
> >>
> >>
> >>
> >> --
> >>
> >> Open Source Solutions for Text Engineering
> >>
> >> http://digitalpebble.blogspot.com/
> >> http://www.digitalpebble.com
> >> http://twitter.com/digitalpebble
> >
>
>


-- 

Open Source Solutions for Text Engineering

http://digitalpebble.blogspot.com/
http://www.digitalpebble.com
http://twitter.com/digitalpebble

Reply via email to