Help with startup of SwiftMQ 9.2.1

classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

Help with startup of SwiftMQ 9.2.1

Luane
Hello!

I'm trying to startup SwiftMQ 9.2.1 on a linux server but I get this:

java.lang.NullPointerException
        at com.swiftmq.impl.routing.single.RoutingSwiftletImpl.startup(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startUpSwiftlet(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startKernelSwiftlet(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startKernelSwiftlets(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.initSwiftlets(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startRouter(Unknown Source)
        at com.swiftmq.Router.main(Unknown Source)
Exception during startup kernel swiftlet 'sys$routing': null

Please advise?

Thanks!
Luane
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

IIT Software
Administrator
It starts up fine here. What have you done? ;-)

Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

Luane
I am obviously doing something wrong  haha!

In my swiftmq_9_2_1.xml I have sys$routing configured as this:

<swiftlet name="sys$routing">
    <connectors>
      <connector name="routergin" hostname="gvrhtst1.vine.co.za" port="5200"/>
      <connector name="routertestgin1" hostname="gvrhtst.vine.co.za" port="5200"/>
      <connector name="routertestgin2" hostname="gvrhtst3.vine.co.za" port="5200"/>
    </connectors>
    <filters/>
    <listeners>
      <listener name="plainsocket" port="4100">
        <host-access-list/>
      </listener>
    </listeners>
    <static-routes>
      <static-route name="routertestgin1"/>
      <static-route name="routertestgin2"/>
    </static-routes>
  </swiftlet>

That is the same as what I had for 8.1.1. Does the config stay the same for both releases?
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

IIT Software
Administrator
It starts up fine even if I use a 8.1.0 configuration (by copying it into the config/router1 directory of 9.2.1):

./smqr1
+++ Saving old configuration to /var/tmp/swiftmq_9_2_1/scripts/unix/../../config/router1/routerconfig.xml.810
+++ Converting configuration to 9.0.0 ...
+++ Added AMQP listener (plain) on port 5672
+++ Added AMQP listener (SSL) on port 5671
+++ Saving new configuration to /var/tmp/swiftmq_9_2_1/scripts/unix/../../config/router1/routerconfig.xml
Booting SwiftMQ 9.2.1 Production ...
... startup: Trace Swiftlet
... startup: Log Swiftlet
... startup: Authentication Swiftlet
... startup: Threadpool Swiftlet
... startup: Timer Swiftlet
... startup: Network Swiftlet
... startup: Store Swiftlet
... startup: Queue Manager Swiftlet
... startup: Topic Manager Swiftlet
... startup: Accounting Swiftlet
... startup: Management Swiftlet
... startup: XA Resource Manager Swiftlet
... startup: Routing Swiftlet (Single Connection)
... startup: JNDI Swiftlet
... startup: JMS Swiftlet
... startup: AMQP Swiftlet
... startup: Deploy Swiftlet
... startup: JMS Application Container Swiftlet
... startup: Scheduler Swiftlet
... startup: Monitor Swiftlet
SwiftMQ 9.2.1 Production is ready.

Which SwiftMQ distribution do you use (standard, HA, Scalability pack etc)?

Did you use a fresh 9.2.1 with your old config and started it?
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

Luane
We use HA.

Yes my boss installed the 9.2.1 version on the linux server and i just changed the environment variable to point to the new swiftMQ version.

This is as far as it gets:

Booting SwiftMQ 9.2.1 Production ...
... startup: Trace Swiftlet
... startup: Log Swiftlet
... startup: Authentication Swiftlet
... startup: Threadpool Swiftlet
... startup: Timer Swiftlet
... startup: Network Swiftlet
... startup: Store Swiftlet
... startup: Queue Manager Swiftlet
... startup: Topic Manager Swiftlet
... startup: Management Swiftlet
... startup: XA Resource Manager Swiftlet
... startup: Routing Swiftlet (Unlimited Connections)
java.lang.NullPointerException
        at com.swiftmq.impl.routing.single.RoutingSwiftletImpl.startup(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startUpSwiftlet(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startKernelSwiftlet(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startKernelSwiftlets(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.initSwiftlets(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startRouter(Unknown Source)
        at com.swiftmq.Router.main(Unknown Source)
Exception during startup kernel swiftlet 'sys$routing': null
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

IIT Software
Administrator
The output you show above is not HA; it's the standard router with Routing Unlimited Swiftlet installed.

I guess what you've done is to use your old 8.1.0 routerconfig.xml, changed

release="08.01.00"

to

release="09.02.01"

and then started the router, right?

Wrong because it bypasses the automatic config upgrade which takes place on the first startup with an old config (see my post above for the example output).

So what you need to do is to put the original 8.1.0 routerconfig.xml into the 9.2.1 config/router1 directory (or whatever directory you use) and simply start your router. You should see that the config is upgraded and the router starts properly.

Why the Routing Swiftlet throws a NPE is because it requires the Accounting Swiftlet which isn't started because the config wasn't upgraded.

Automatic upgrade is described at the bottom of each release note.
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

Luane
I am so blonde!!

This is what I did and then it worked:

1). copy the swiftmq_1_1_1.xml file over the 9_2_1 file so it can convert it then
2). removed the sys$accounting and sys$amqp attribute from the router name

Thanks for your help :)
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

IIT Software
Administrator
All right!
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

Simeon Leyzerzon
We are getting a similar error but on a much earlier version (release="05.00.03") of SwiftMQ with jdk1.6.0_45.  Here's the stack trace:

Booting SwiftMQ 5.0.3 Production ...
... startup: Trace Swiftlet
... startup: Log Swiftlet
... startup: Authentication Swiftlet
... startup: Threadpool Swiftlet
... startup: Timer Swiftlet
... startup: Network Swiftlet
... startup: Store Swiftlet
... startup: Queue Manager Swiftlet
java.lang.NullPointerException
        at com.swiftmq.impl.trace.standard.e.write(Unknown Source)
        at java.io.PrintWriter.write(PrintWriter.java:384)
        at java.io.PrintWriter.write(PrintWriter.java:401)
        at java.io.PrintWriter.print(PrintWriter.java:532)
        at java.io.PrintWriter.println(PrintWriter.java:669)
        at com.swiftmq.impl.trace.standard.TraceSpaceImpl.trace(Unknown Source)
        at com.swiftmq.impl.queue.standard.MessageQueue.startQueue(Unknown Source)
        at com.swiftmq.impl.queue.standard.QueueManagerImpl.a(Unknown Source)
        at com.swiftmq.impl.queue.standard.QueueManagerImpl.a(Unknown Source)
        at com.swiftmq.impl.queue.standard.QueueManagerImpl.a(Unknown Source)
        at com.swiftmq.impl.queue.standard.QueueManagerImpl.startup(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startUpSwiftlet(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startKernelSwiftlets(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.initSwiftlets(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startRouter(Unknown Source)
        at com.swiftmq.Router.main(Unknown Source)
com.swiftmq.swiftlet.SwiftletException
        at com.swiftmq.impl.queue.standard.QueueManagerImpl.a(Unknown Source)
        at com.swiftmq.impl.queue.standard.QueueManagerImpl.startup(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startUpSwiftlet(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startKernelSwiftlets(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.initSwiftlets(Unknown Source)
        at com.swiftmq.swiftlet.SwiftletManager.startRouter(Unknown Source)
        at com.swiftmq.Router.main(Unknown Source)
Exception during startup kernel swiftlet 'sys$queuemanager': null
Booting SwiftMQ 5.0.3 Production ...

What could be wrong???
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

IIT Software
Administrator
That's not the same error.

It seems you have enabled tracing. What is the config of the sys$trace Swiftlet?
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

Simeon Leyzerzon
Here's the whole trace swiftlet:


        <swiftlet name="sys$trace">
                <spaces>
                        <space name="kernel">
                                <predicates>
                                        <predicate name="0" filename="trace/manager.trace" value="%Manager"/>
                                        <predicate name="1" filename="trace/net.trace" value="sys$net"/>
                                        <predicate name="10" filename="trace/auth.trace" value="sys$auth%"/>
                                        <predicate name="11" filename="trace/mgmt.trace" value="sys$mgmt%"/>
                                        <predicate name="12" filename="trace/store.trace" value="sys$store"/>
                                        <predicate name="13" filename="trace/xa.trace" value="sys$xa"/>
                                        <predicate name="14" filename="trace/jac.trace" value="sys$jac"/>
                                        <predicate name="15" filename="trace/timer.trace" value="sys$timer"/>
                                        <predicate name="16" filename="trace/scheduler.trace" value="sys$scheduler"/>
                                        <predicate name="2" filename="trace/jms.trace" value="sys$jms"/>
                                        <predicate name="3" filename="trace/deploy.trace" value="sys$deploy"/>
                                        <predicate name="4" filename="trace/thread.trace" value="sys$thread%"/>
                                        <predicate name="5" filename="trace/routing.trace" value="sys$rout%"/>
                                        <predicate name="6" filename="trace/queuemanager.trace" value="sys$queue%"/>
                                        <predicate name="7" filename="trace/topic.trace" value="sys$topic%"/>
                                        <predicate name="9" filename="trace/jndi.trace" value="sys$jndi"/>
                                </predicates>
                        </space>
                        <space name="protocol">
                                <predicates>
                                        <predicate name="1" filename="trace/protocol.trace" value="%"/>
                                </predicates>
                        </space>
                        <space name="queue" enabled="true">
                                <predicates>
                                        <predicate name="2" filename="trace/emm2fxdd.trace" value="emm2fxdd%"/>
                                        <predicate name="3" filename="trace/order.trace" value="orderqueue%"/>
                                        <predicate name="4" filename="trace/queue.trace" value="%"/>
                                </predicates>
                        </space>
                        <space name="swiftlet">
                                <predicates>
                                        <predicate name="1" filename="trace/swiftlet.trace" value="%"/>
                                </predicates>
                        </space>
                </spaces>
        </swiftlet>
Reply | Threaded
Open this post in threaded view
|

Re: Help with startup of SwiftMQ 9.2.1

IIT Software
Administrator
Disabling the "queue" trace space should solve that. You may also check whether the trace directory exists. This is a relative path to the directory where the start script is located. Per default this is ../../trace/router1