NullpointerException in PubSubModule

Hi,

I’'m using the IMGateway plugin, version 1.0Beta4.

I’'m using Psi as jabber client and when I open the service discovery window, to see the available external transports, Ihave the following stackTrace in the error log file:

java.lang.NullPointerException

at org.jivesoftware.wildfire.pubsub.PubSubModule.getItems(PubSubModule.java:585)

at org.jivesoftware.wildfire.disco.IQDiscoItemsHandler.handleIQ(IQDiscoItemsHandle r.java:106)

at org.jivesoftware.wildfire.pubsub.PubSubModule.process(PubSubModule.java:164)

at org.jivesoftware.wildfire.pubsub.PubSubModule.process(PubSubModule.java:117)

at org.jivesoftware.wildfire.IQRouter.handle(IQRouter.java:218)

at org.jivesoftware.wildfire.IQRouter.route(IQRouter.java:96)

at org.jivesoftware.wildfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:67)

at org.jivesoftware.wildfire.net.SocketReader.processIQ(SocketReader.java:250)

at org.jivesoftware.wildfire.net.ClientSocketReader.processIQ(ClientSocketReader.j ava:51)

m using Psi as jaat org.jivesoftware.wildfire.net.SocketReader.process(SocketReader.java:216)

at org.jivesoftware.wildfire.net.BlockingReadingMode.readStream(BlockingReadingMod e.java:156)

at org.jivesoftware.wildfire.net.BlockingReadingMode.run(BlockingReadingMode.java: 62)

at org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:123)

at java.lang.Thread.run(Unknown Source)

2006.11.13 03:27:42 org.jivesoftware.wildfire.pubsub.PubSubModule.process(PubSubModule.java:128) Internal server error

I’'m using wildfire 3.1.0 and my server properties are :

name propValue



passwordKey password

plugin.gateway.aim.enabled true

plugin.gateway.icq.enabled true

plugin.gateway.irc.enabled true

plugin.gateway.msn.enabled true

plugin.gateway.yahoo.enabled true

plugin.search.serviceEnabled false

plugin.search.serviceName search

register.inband false

register.password true

update.lastCheck 1162092200155

update.notify-admins true

update.proxy.port -1

update.service-enabled false

xmpp.audit.active true

xmpp.audit.iq true

xmpp.audit.logdir /app/jive/logs

xmpp.audit.logtimeout 120000

xmpp.audit.maxcount 10

xmpp.audit.maxsize 10

xmpp.audit.message true

xmpp.audit.presence true

xmpp.auth.anonymous false

xmpp.component.defaultSecret default

xmpp.component.permission whitelist

xmpp.component.socket.active true

xmpp.domain myserverdomain

xmpp.muc.history.maxNumber 25

xmpp.muc.history.type number

xmpp.offline.quota 1024

xmpp.offline.type store

xmpp.server.socket.active false

xmpp.session.conflict-limit -1

xmpp.socket.ssl.active false

The weird thing, is that the service are properly displayed and i can register on service. But I’'m wondering what this error mean and what can be affected.

Thanks,

Melanie

Hey Melanie,

Do you see any errors before the one you pasted? I would say that an error occurred in the pubsub module while starting up the server and the pubsub module remained in an inconsistent state.

Regards,

– Gato

Hi Gaston,

Indeed you’'re right, I have the following error in my logs:

2006.10.27 04:01:56 org.jivesoftware.wildfire.roster.RosterItemProvider.getItems(RosterItemProvider. java:330)

java.sql.SQLException: JZ0S2: Statement object has already been closed.

at com.sybase.jdbc3.jdbc.ErrorMessage.raiseError(ErrorMessage.java:572)

at com.sybase.jdbc3.jdbc.SybStatement.checkDead(SybStatement.java:2058)

at com.sybase.jdbc3.jdbc.SybStatement.close(SybStatement.java:494)

at com.sybase.jdbc3.jdbc.SybStatement.close(SybStatement.java:482)

at org.jivesoftware.wildfire.roster.RosterItemProvider.getItems(RosterItemProvider .java:329)

at org.jivesoftware.wildfire.roster.Roster.(Roster.java:94)

at org.jivesoftware.wildfire.roster.RosterManager.getRoster(RosterManager.java:94)

at org.jivesoftware.wildfire.user.User.getRoster(User.java:289)

at org.jivesoftware.wildfire.handler.IQRosterHandler.manageRoster(IQRosterHandler. java:187)

at org.jivesoftware.wildfire.handler.IQRosterHandler.handleIQ(IQRosterHandler.java :104)

at org.jivesoftware.wildfire.handler.IQHandler.process(IQHandler.java:48)

at org.jivesoftware.wildfire.IQRouter.handle(IQRouter.java:268)

at org.jivesoftware.wildfire.IQRouter.route(IQRouter.java:96)

at org.jivesoftware.wildfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:67)

at org.jivesoftware.wildfire.net.SocketReader.processIQ(SocketReader.java:250)

at org.jivesoftware.wildfire.net.ClientSocketReader.processIQ(ClientSocketReader.j ava:51)

at org.jivesoftware.wildfire.net.SocketReader.process(SocketReader.java:216)

at org.jivesoftware.wildfire.net.BlockingReadingMode.readStream(BlockingReadingMod e.java:156)

at org.jivesoftware.wildfire.net.BlockingReadingMode.run(BlockingReadingMode.java: 62)

at org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:123)

at java.lang.Thread.run(Unknown Source)

I’‘m using a sybase database. We migrated from version 2.6 to version 3.1 and we had to migrate the database manually, as wildfire doesn’'t handle the migration to sybase yet (see JM-856 ). Do you think something went wrong in the migration process ? I also looked in the forum and found a post with the same issue, but it should have been fixed with JM-570 .

Do you think this error is related to the previous one ?

Thanks,

Melanie

Hey Melanie,

That error is not related to the pubsub problem. Anyway, thanks for the bug report… I filed JM-896 and checked in a fix for it.

Regarding the pubsub problem…could you stop the server, clean up the log files and restart it? Let me know what you see in the error and warn files. If nothing appears then could you past the content of your pubsubNode table?

Thanks,

– Gato

Hi Gaston,

I stopped and restart wildfire and there was nothing in the error neither in warn log file. But I was able to reproduce the error, when I searched for services using Psi.

Here is the content of pubsubNode table:

serviceID: pubsub

nodeID : 0

leaf : 0

creationDate : 001161932290032

modificationDate : 001161932290032

parent : (null)

deliverPayloads : 0

maxPayloadSize : 0

persistItems: 0

maxItems : 0

notifyConfigChanges:1

notifyDelete :1

notifyRetract: 1

presenceBased: 0

sendItemSubscribe: 0

publisherModel : publishers

subscriptionEnabled :1

configSubscription: 0

accessModel: open

payloadType :

bodyXSLT:

dataformXSLT:

creator : admin@myserverdomain

description:

language : English

name:

replyPolicy: (null)

associationPolicy: all

maxLeafNodes: -1

Thanks for your help and please let me know if you need more info.

Melanie

Message was edited by: melane

Message was edited by: melane

Message was edited by: melane