We are using Ejabberd 17.04 with Mysql databse.
We are facing a issue with the message archive module.
When the messages are archived, then the time stamp in the message payload is larger than the time at which the archive record is created.
Please see the following data example from the archive table.
{"callHistoryId":0,"callKind":0,"callType":0,"displayPic":"","endTime":0,"groupId":0,"isIdentityVerified":0,"message":"13","messageId":"1502272247264-68","messageType":0,"startTime":0,"userId":,"userName":""} | 2017-08-09 02:50:42
The time stamp 1502272247264 is equivalent to 2017-08-09 02:50:47. However, the created_at value for the given record is 2017-08-09 02:50:42, i.e. five seconds less than the message's time stamp.
This creates a problem when we try to fetch the archived messages after message's time stamp. Since the archive records' time is less than the actual messages' time stamp, the records are not fetched.
It is our understanding that the created_at for the archive records, should be larger than the corresponding message's time stamp. Is this understanding correct?
If yes, then what could be the problem which results in this behavior and how do we rectify it?
Any help is appreciated.