[ 
https://issues.apache.org/jira/browse/SOLR-7884?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14700370#comment-14700370
 ] 

Ramkumar Aiyengar commented on SOLR-7884:
-----------------------------------------

Robert, I think Hoss' suggestion of using SOLR-5043 works best, as it decouples 
the functionality which needs the hostname (SystemInfoHandler) from core load. 
If you need system info to be shown without hanging on hostname, that's 
something you can discuss as an enhancement to that handler, or you could even 
write your own handler which avoids these lookups. But in any case, it 
shouldn't hold up core load..

> Omit reverse lookups in SystemInfoHandler
> -----------------------------------------
>
>                 Key: SOLR-7884
>                 URL: https://issues.apache.org/jira/browse/SOLR-7884
>             Project: Solr
>          Issue Type: Improvement
>    Affects Versions: 5.2.1
>            Reporter: Robert Krüger
>         Attachments: SOLR-7884.patch
>
>
> The method SystemInfoHandler.init contains this code:
> {code:java}
>   try {
>       InetAddress addr = InetAddress.getLocalHost();
>       hostname = addr.getCanonicalHostName();
>     } catch (UnknownHostException e) {
>       //default to null
>     }
>   }
> {code}
> The call to getCanonicalHostName triggers a DNS reverse lookup, that on Mac 
> OSX times out after 30 seconds if the current network setup has a problem 
> with reverse lookup and then returns the IP address as host name. In our 
> product this leads to a hang of 2x30 seconds (one for the SystemInfoHandler 
> of the container and another one for that of the core) during startup under 
> these conditions. Unfortunately I have found no way to make this reproducible 
> by simulating it as it depends on local network config, os and whatever else.
> As Solr is shipped bundled with a desktop application, there is currently no 
> workaround because the user network configuration is beyond our reach.
> The suggested fix for this is to replace the call to getCanonicalHostName by 
> one to getHostName(), which is done for exactly this purpose (obtaining a 
> host string for logging) in the popular Logback framework (see 
> http://logback.qos.ch/xref/ch/qos/logback/core/util/ContextUtil.html, how 
> they do it).
> Otherwise Solr has been working perfectly in this setup (bundled with a 
> desktop app) for a long time and it would be great to remove that last 
> obstacle to make it a nicer citizen bundlingwise.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to