openfire upgrade to 3.8

Volodymyr Kostyrko c.kworr at gmail.com
Mon Mar 4 15:43:58 UTC 2013


04.03.2013 15:42, Pietro Cerutti:
> On 2013-Mar-04, 15:04, Volodymyr Kostyrko wrote:
>> 28.02.2013 17:41, Pietro Cerutti:
>>> On 2013-Feb-28, 16:39, Volodymyr Kostyrko wrote:
>>>> 28.02.2013 11:43, Pietro Cerutti:
>>>>> On 2013-Feb-26, 06:26, David Southwell wrote:
>>>>>> Hi
>>>>> Hello David,
>>>>>
>>>>>> Any chance of an upgrade for openfire to .3.8
>>>>>>
>>>>>> There are some bugs in 3.7 which have been fixed for 3.8
>>>>>
>>>>> I was waiting for 3.8.1, which was supposed to be released a couple of
>>>>> days after 3.8 and solve a couple of issues, but since it hasn't
>>>>> arrived yet, I've just committed the update to 3.8.
>>>>
>>>> Thank you for update. But how can I uninstall all bundled plugins? Or
>>>> can I just skip plugin installation?
>>>
>>> Good idea. I just committed an update that adds an option to turn off
>>> the installation of the bundled plugins. Just run 'make config' and
>>> uncheck the PLUGINS options. Then reinstall.
>>>
>>
>> Fails to start WITHOUT_PLUGINS for me:
>>
>> /usr/local/bin/java -server -jar -Xmx256M
>> -Dopenfire.lib.dir=/usr/local/share/java/openfire/lib
>> -DopenfireHome=/usr/local/share/java/openfire
>> /usr/local/share/java/openfire/lib/startup.jar
>> Exception in thread "main" java.lang.NoClassDefFoundError:
>> org/jivesoftware/util/Log
>>           at
>> org.jivesoftware.openfire.starter.ServerStarter.start(ServerStarter.java:104)
>>           at
>> org.jivesoftware.openfire.starter.ServerStarter.main(ServerStarter.java:58)
>> Caused by: java.lang.ClassNotFoundException: org.jivesoftware.util.Log
>>           at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
>>           at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>>           at java.security.AccessController.doPrivileged(Native Method)
>>           at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>>           at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
>>           at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>>           at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
>>           ... 2 more
>>
>> Full version works like a charm.
>
> Thanks for the report. Are you able to identify the missing file?

Putting in admin folder fixes everything. The server starts even if only 
empty admin/webapp/WEB-INF/lib folder exits.

Easy fix would be installing admin interface anyway. Most users will 
want it.

>
>> While I'm here:
>>
>> http://community.igniterealtime.org/message/227216
>>
>> I hit this one too, tracing the start script I see:
>>
>> + _run_rc_doit 'openfire_stop '
>> + debug 'run_rc_command: doit: openfire_stop '
>> + eval 'openfire_stop '
>> + openfire_stop
>> + check_pidfile /var/run/openfire.pid COPYRIGHT bin boot compat
>> compat.old dev entropy etc home lib libexec limb0 media mnt proc rescue
>> root sbin slim.core sys tmp usr var var.new
>> + _pidfile=/var/run/openfire.pid
>> + _procname=COPYRIGHT
>>
>> That looks like my root directory! :)
>
> Yeah, looks like it. I can't reproduce it here:

The core problem is @ line 52:

procname=`ps -o command= $rc_pid | awk '{print $1 }'`

If there's no such running process ps outputs nothing, awk outputs 
nothing and procname starts as an empty string. Later in check_pidfile 
absence of other symbol makes '**' a valid wildcard and voila.

Checking procname for zero-length string and setting it to unitialized 
fixes this behavior:

   if [ ! -z "$rc_pid" ]; then
     procname=`ps -o command= $rc_pid | awk '{print $1 }'`
     if [ -z "$procname" ]; then
       procname='uninitialized'
     fi
   fi

However I don't know is this a good solution.

-- 
Sphinx of black quartz, judge my vow.


More information about the freebsd-ports mailing list