tomat
January 15, 2025, 3:53pm
6
вам лучше завести тикет на Github с MRE которое вы выложили, тк в коде действительно используется ограничение по количеству документов в индексе в функции GetMaxMatches
int64_t iNanoResult = int64_t(g_iPredictorCostSkip)* tMeta.m_tStats.m_iSkips
+ g_iPredictorCostDoc * tMeta.m_tStats.m_iFetchedDocs
+ g_iPredictorCostHit * tMeta.m_tStats.m_iFetchedHits
+ g_iPredictorCostMatch * tMeta.m_iTotalMatches;
return iNanoResult/1000000;
}
int GetMaxMatches ( int iQueryMaxMatches, const CSphIndex * pIndex )
{
if ( iQueryMaxMatches<=DEFAULT_MAX_MATCHES )
return iQueryMaxMatches;
int64_t iDocs = Min ( (int)INT_MAX, pIndex->GetStats().m_iTotalDocuments ); // clamp to int max
return Min ( iQueryMaxMatches, Max ( iDocs, DEFAULT_MAX_MATCHES ) ); // do not want 0 sorter and sorter longer than query.max_matches
}
} // namespace static