mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-08-24 13:17:10 +08:00
feat(server): improve indexer perf (#15512)
#### PR Dependency Tree * **PR #15512** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Search now supports generation-based indexing with embedded and remote providers. * Added automatic search reconciliation and improved handling of document, workspace, and permission changes. * Added clearer search status errors for unavailable, syncing, unready, or failed indexes. * Added Manticore Search end-to-end support and provider-specific search behavior. * **Improvements** * Search and aggregate pagination now report returned results and continuation status more accurately. * Improved permission filtering to prevent inaccessible documents from appearing in results. * Admin provider selection now consistently enables indexing. * **Documentation** * Clarified search pagination, aggregation counts, provider configuration, and end-to-end setup. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
@@ -259,6 +259,7 @@ export interface AggregateBucketHitsObjectType {
|
||||
|
||||
export interface AggregateBucketObjectType {
|
||||
__typename?: 'AggregateBucketObjectType';
|
||||
/** Number of returned sample hits in this bucket */
|
||||
count: Scalars['Int']['output'];
|
||||
/** The hits object */
|
||||
hits: AggregateBucketHitsObjectType;
|
||||
@@ -1108,6 +1109,8 @@ export type ErrorDataUnion =
|
||||
| ResponseTooLargeErrorDataType
|
||||
| RuntimeConfigNotFoundDataType
|
||||
| SameSubscriptionRecurringDataType
|
||||
| SearchIndexFailedDataType
|
||||
| SearchIndexNotReadyDataType
|
||||
| SpaceAccessDeniedDataType
|
||||
| SpaceNotFoundDataType
|
||||
| SpaceOwnerNotFoundDataType
|
||||
@@ -1248,7 +1251,11 @@ export enum ErrorNames {
|
||||
RUNTIME_CONFIG_NOT_FOUND = 'RUNTIME_CONFIG_NOT_FOUND',
|
||||
SAME_EMAIL_PROVIDED = 'SAME_EMAIL_PROVIDED',
|
||||
SAME_SUBSCRIPTION_RECURRING = 'SAME_SUBSCRIPTION_RECURRING',
|
||||
SEARCH_INDEX_FAILED = 'SEARCH_INDEX_FAILED',
|
||||
SEARCH_INDEX_NOT_READY = 'SEARCH_INDEX_NOT_READY',
|
||||
SEARCH_PERMISSION_SYNCING = 'SEARCH_PERMISSION_SYNCING',
|
||||
SEARCH_PROVIDER_NOT_FOUND = 'SEARCH_PROVIDER_NOT_FOUND',
|
||||
SEARCH_PROVIDER_UNAVAILABLE = 'SEARCH_PROVIDER_UNAVAILABLE',
|
||||
SIGN_UP_FORBIDDEN = 'SIGN_UP_FORBIDDEN',
|
||||
SPACE_ACCESS_DENIED = 'SPACE_ACCESS_DENIED',
|
||||
SPACE_NOT_FOUND = 'SPACE_NOT_FOUND',
|
||||
@@ -2829,6 +2836,16 @@ export interface SearchHighlight {
|
||||
field: Scalars['String']['input'];
|
||||
}
|
||||
|
||||
export interface SearchIndexFailedDataType {
|
||||
__typename?: 'SearchIndexFailedDataType';
|
||||
diagnosticId: Scalars['String']['output'];
|
||||
}
|
||||
|
||||
export interface SearchIndexNotReadyDataType {
|
||||
__typename?: 'SearchIndexNotReadyDataType';
|
||||
spaceId: Scalars['String']['output'];
|
||||
}
|
||||
|
||||
export interface SearchInput {
|
||||
options: SearchOptions;
|
||||
query: SearchQuery;
|
||||
@@ -2889,8 +2906,11 @@ export interface SearchResultObjectType {
|
||||
|
||||
export interface SearchResultPagination {
|
||||
__typename?: 'SearchResultPagination';
|
||||
/** Number of results returned in this response, not a global total */
|
||||
count: Scalars['Int']['output'];
|
||||
/** Whether the provider has more candidates; remaining visible results are not guaranteed */
|
||||
hasMore: Scalars['Boolean']['output'];
|
||||
/** Opaque provider candidate cursor; it does not guarantee complete visible-result pagination */
|
||||
nextCursor: Maybe<Scalars['String']['output']>;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user