NullPointerException when producer sends message to a Composite Queue
We're trying to implement a composite queue on SwiftMQ 9.3.0 and we're seeing a NullPointerException when we try to put a message on the queue. We're treating the composite queue like a regular queue as far as message producing goes.
I looked through the change logs on newer releases but didn't see anything for composite queues in the bug fixes. We see a panic in the error log and this stack trace is sent to standard out/error. Are we doing something wrong or is this a bug?
at com.swiftmq.impl.queue.standard.composite.c.done(Unknown Source)
at com.swiftmq.tools.concurrent.AsyncCompletionCallback.notifyCallbackStack(Unknown Source)
at com.swiftmq.impl.store.standard.log.LogManager.process(Unknown Source)
at com.swiftmq.tools.queue.SingleProcessorQueue.dequeue(Unknown Source)
at com.swiftmq.impl.store.standard.log.b.run(Unknown Source)
at com.swiftmq.impl.threadpool.standard.PoolThread.run(Unknown Source)
Re: NullPointerException when producer sends message to a Composite Queue
All of our work was against Alerts_Composite_Queue. We did delete that test composite queue but it didn't seem to make a difference.
One thing we notice is that we seem to be able to actually put messages on the queue but we get the null pointer exception when we attempt to consume the second message from the queue. The first one seems to work.
OK, we've got it working but we do see an issue. It looks like the queues bound to the composite queues cannot have an FC Start value of -1. In general we don't want flow control so we've always set FC Start to -1 and FC Delay to 0. When we leave FC Start at the default of 400 things work just fine, -1 will give us an NPE.