meilisearch improvements

This commit is contained in:
Danny Avila 2024-05-19 12:16:25 -04:00
parent e55a89270e
commit 5c15b60601
No known key found for this signature in database
GPG key ID: 2DD9CC89B9B50364
2 changed files with 4 additions and 24 deletions

View file

@ -155,7 +155,7 @@ const createMeiliMongooseModel = function ({ index, attributesToIndex }) {
function (results, value, key) { function (results, value, key) {
return { ...results, [key]: 1 }; return { ...results, [key]: 1 };
}, },
{ _id: 1 }, { _id: 1, __v: 1 },
), ),
).lean(); ).lean();

View file

@ -41,29 +41,10 @@ router.get('/', async function (req, res) {
return; return;
} }
const messages = ( const messages = (await Message.meiliSearch(q, undefined, true)).hits;
await Message.meiliSearch(
q,
{
attributesToHighlight: ['text'],
highlightPreTag: '**',
highlightPostTag: '**',
},
true,
)
).hits.map((message) => {
const { _formatted, ...rest } = message;
return {
...rest,
searchResult: true,
text: _formatted.text,
};
});
const titles = (await Conversation.meiliSearch(q)).hits; const titles = (await Conversation.meiliSearch(q)).hits;
const sortedHits = reduceHits(messages, titles); const sortedHits = reduceHits(messages, titles);
// debugging:
// logger.debug('user:', user, 'message hits:', messages.length, 'convo hits:', titles.length);
// logger.debug('sorted hits:', sortedHits.length);
const result = await getConvosQueried(user, sortedHits, pageNumber); const result = await getConvosQueried(user, sortedHits, pageNumber);
const activeMessages = []; const activeMessages = [];
@ -86,8 +67,7 @@ router.get('/', async function (req, res) {
delete result.cache; delete result.cache;
} }
delete result.convoMap; delete result.convoMap;
// for debugging
// logger.debug(result, messages.length);
res.status(200).send(result); res.status(200).send(result);
} catch (error) { } catch (error) {
logger.error('[/search] Error while searching messages & conversations', error); logger.error('[/search] Error while searching messages & conversations', error);