hiden dataset source (#4152)

* hiden dataset source

* perf: reader
This commit is contained in:
Archer
2025-03-13 21:30:40 +08:00
committed by GitHub
parent 7ec4ba7067
commit 3e21030536
10 changed files with 157 additions and 262 deletions

View File

@@ -13,7 +13,6 @@ export type GetCollectionQuoteProps = LinkedPaginationProps & {
chatId: string;
chatItemDataId: string;
isInitialLoad: boolean;
collectionId: string;
appId: string;
@@ -37,7 +36,6 @@ async function handler(
prevIndex,
nextId,
nextIndex,
isInitialLoad,
collectionId,
chatItemDataId,
@@ -84,7 +82,6 @@ async function handler(
initialIndex,
pageSize: limitedPageSize,
chatTime: chatItem.time,
isInitialLoad,
baseMatch
});
}
@@ -111,14 +108,12 @@ async function handleInitialLoad({
initialIndex,
pageSize,
chatTime,
isInitialLoad,
baseMatch
}: {
initialId: string;
initialIndex: number;
pageSize: number;
chatTime: Date;
isInitialLoad: boolean;
baseMatch: BaseMatchType;
}): Promise<GetCollectionQuoteRes> {
const centerNode = await MongoDatasetData.findOne(
@@ -129,22 +124,18 @@ async function handleInitialLoad({
).lean();
if (!centerNode) {
if (isInitialLoad) {
const list = await MongoDatasetData.find(baseMatch, quoteDataFieldSelector)
.sort({ chunkIndex: 1, _id: -1 })
.limit(pageSize)
.lean();
const list = await MongoDatasetData.find(baseMatch, quoteDataFieldSelector)
.sort({ chunkIndex: 1, _id: -1 })
.limit(pageSize)
.lean();
const hasMoreNext = list.length === pageSize;
const hasMoreNext = list.length === pageSize;
return {
list: processChatTimeFilter(list, chatTime),
hasMorePrev: false,
hasMoreNext
};
}
return Promise.reject('centerNode not found');
return {
list: processChatTimeFilter(list, chatTime),
hasMorePrev: false,
hasMoreNext
};
}
const prevHalfSize = Math.floor(pageSize / 2);