Until yesterday I used Openfire 3.10.3 with Spark 2.7.4: no problem with offline messages.
This night I have upgraded to new version 4.0.0.
All is OK except the offline messages:
user A is offline
user B sent 3 messages to A
user C sent 2 messages to A
user D sent 5 messages to A
when user A connects to Openfire with the Spark client, he only has the first message of user B, the first message of user C and the first message of user D. The other offline messages are lost.
All the 10 messages are present in the Monitoring plugin.
Confirm the issue. Tested also with Exodus and Pidgin. Both get all offline messages. Spark 2.7.3 and 2.7.4 only show the first message and do not show (Offline) prefix before the message. They do get the messages (raw packets). But in 4.0.0 delayed message is different and this is causing problems for Spark.
3.10.3 offline message:
TTT1t14TEH
4.0.0 offline message:
TTT12fNi7e
Missing the bolded part. Spark is probably looking for jabber:x:delay. Suspecting this commit Merge pull request #492 from sco0ter/smDelay · igniterealtime/Openfire@8d2f072 · GitHub
Not sure if this is issue with Spark or Openfire. Maybe that’s the code in Spark adding the prefix causing this. Spark/TranscriptWindow.java at master · igniterealtime/Spark · GitHub Line 190
Have filed a ticket for Spark for now, but i don’t know how to fix this. Even if we know how to fix this, it will require an urgent release of Spark. [SPARK-1673] Only first offline message is shown - Jive Software Open Source
This is new in conjunction with Openfire. Spark always lags behind Openfire, unfortunately. Though one would think that two software units provided by same entity should work together. That’s second major Openfire release causing some issues. Spark has no lead developer for like 4-5 years.