User Tools

Site Tools


troubleshooting:problems_starting_evergreen

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
troubleshooting:problems_starting_evergreen [2007/05/03 01:35] – created phasefxtroubleshooting:problems_starting_evergreen [2022/02/10 13:34] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +=====Troubleshooting: Problems starting Evergreen=====
  
 +====Ensure your fully qualified hostname is what you think it is====
 +===Problem===
 +When you try to start Evergreen, you receive the error message <code>Can't call method "documentElement" on an undefined value
 +at /openils/lib/perl5/OpenSRF/Utils/Settings.pm line 39.</code>
 +===Solution===
 +This error message means that the
 +OpenSRF Perl service was unable to find an element in ''opensrf.xml'' that matches your system's fully qualified hostname. For example, if the fully qualified hostname of your system is *brawny*, OpenSRF expects to find an XML snippet similar to the following in ''opensrf.xml'':<code>...
 +<hosts>
 +  <brawny>
 +    ...
 +  </brawny>
 +</hosts>
 +...</code>
 +
 +To determine the fully qualified hostname of your system, run the following command
 +at the command line:
 +
 +<code>perl -MNet::Domain=hostfqdn -e "print hostfqdn();"</code>
 +
 +If the output from this command does not match the opening and closing element name in your ''opensrf.xml'' file, try changing the element names accordingly.
 +
 +//Aside: the command ''hostname -f'' is easier to type and some configuration files still refer to it, but it is not guaranteed to give the same results as the Perl command and OpenSRF depends on the output matching the Perl command. So save yourself some grief and just run the nice, long Perl command to lay any doubts to rest.//
 +
 +==== Problems connecting to the jabber server ====
 +===Problem===
 +When you try to start Evergreen, you receive an error message like:<code>
 +!!!!Unable to connect router to jabber server localhost... exiting</code>
 +===Solution #1===
 +Your Jabber server may not be running. You can look for the jabber server process in your list of processes:
 +<code>ps wax | grep -i jabber</code>
 +You can also try to telnet to port 5222 on your jabber server - for example:<code>
 +telnet localhost 5222
 +</code>
 +===Solution #2===
 +OpenSRF may not be pointed at the correct hostname in ''opensrf_core.xml''. Check the value of the XML xpath ''/config/routers/router'' and ''/config/domains/domain'' to ensure that the hostname and Jabber domain matches the expected values. For example, the default values are set to **localhost** in ''opensrf_core.xml.example'':<code>
 +<config>
 +    <opensrf>
 +        <!--  the routers's name on the network -->
 +        <!-- do not change this -->
 +        <router_name>router</router_name>
 +            <routers>
 +                <!-- 
 +                    list of router domains we should register with.
 +                    We must at least have our default jabber domain in here.
 +                -->
 +                <router>localhost</router>
 +            </routers>
 +            <domains>
 +                <!-- Our jabber domain, currenlty only one domain is supported -->
 +                <domain>localhost</domain>
 +            </domains>
 +...
 +</code>
 +
 +====Problems connecting to the settings server====
 +===Problem===
 +''/openils/var/log/opensrf.settings_unix.log'' contains errors similar to the following:
 +<code>
 +2007/05/11-14:25:26 CONNECT UNIX Socket:
 +"/openils/var/sock/opensrf.settings_unix.sock"
 +MessageWrapper received bad XML : error = :1: namespace error: 
 +Namespace prefix stream on error is not defined
 +<stream:error><conflict xmlns='urn:ietf:params:xml:ns:.../><text xml:
 +                   ^ at
 +/openils/lib/perl5/OpenSRF/Transport/SlimJabber/MessageWrapper.pm line 17
 +...
 +Replaced by new connection</text></stream:error></code>
 +===Cause===
 +Recent versions of ejabber have a setting for the maximum number of times a single user is allowed to simultaneously connect to the ejabber server. The default of ''10'' is too low for Evergreen's purposes.
 +
 +===Solution===
 +Increase the ''max_user_sessions'' variable in ''/etc/jabber/ejabberd.cnf'' to something like ''100'' for a single-server Evergreen system:<code>%% Define the maximum number of time a single user is allowed to connect:
 +{max_user_sessions, 100}.</code>

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki

© 2008-2022 GPLS and others. Evergreen is open source software, freely licensed under GNU GPLv2 or later.
The Evergreen Project is a U.S. 501(c)3 non-profit organization.