perf: optimize db performance and greatly reduce the time-consuming fetchConverseMessage request

spec of the message db storage is large
pull/146/head
moonrailgun
parent 778c3a4f4b
commit ad862b7991

@ -33,6 +33,7 @@ class MessageReaction {
}, },
}) })
@index({ createdAt: -1 }) @index({ createdAt: -1 })
@index({ converseId: 1, _id: -1 }) // for fetchConverseMessage
export class Message extends TimeStamps implements Base { export class Message extends TimeStamps implements Base {
_id: Types.ObjectId; _id: Types.ObjectId;
id: string; id: string;
@ -79,7 +80,7 @@ export class Message extends TimeStamps implements Base {
startId: string | null, startId: string | null,
limit = 50 limit = 50
) { ) {
const conditions: FilterQuery<DocumentType<Message>> = { const conditions: FilterQuery<MessageDocument> = {
converseId, converseId,
}; };
if (startId !== null) { if (startId !== null) {

Loading…
Cancel
Save