I've just upgraded from Openfire-3.7.1 with Monitoring Service plugin: 1.2.0 to Openfire-3.8.1 with Monitoring Service Plugin: 1.3.0 and on my Android Xabber client, server-side logs are only returning the oldest conersation when Xabber asks the server for the server logs. The database is Postgresql 8.3.5.
When Monitoring service does the server logs query, it first does "SELECT DISTINCT ofConversation.conversationID, ofConversation.room, ofConversation.isExternal, ofConversation.startDate, ofConversation.lastActivity, ofConversation.messageCount, ofConParticipant.joinedDate, ofConParticipant.leftDate, ofConParticipant.bareJID, ofConParticipant.jidResource, ofConParticipant.nickname, ofMessageArchive.fromJID, ofMessageArchive.toJID, ofMessageArchive.sentDate, ofMessageArchive.body FROM ofConversation INNER JOIN ofConParticipant ON ofConversation.conversationID = ofConParticipant.conversationID INNER JOIN ofMessageArchive ON ofConParticipant.conversationID = ofMessageArchive.conversationID WHERE ofConParticipant.bareJID = $1 AND (ofMessageArchive.toJID = $2 OR ofMessageArchive.fromJID = $3)", but then only does one: "SELECT DISTINCT ofConversation.conversationID, ofConversation.startDate, ofConversation.lastActivity, ofConParticipant.bareJID FROM ofConversation INNER JOIN ofConParticipant ON ofConversation.conversationID = ofConParticipant.conversationID INNER JOIN ofMessageArchive ON ofConParticipant.conversationID = ofMessageArchive.conversationID WHERE ofConversation.conversationID = $1 ORDER BY ofConversation.startDate" where ofConversation.conversationID is the oldest id that was returned in the first query.