Bound document content extraction time and decouple it from uploads (MM-69098) (#36856) (#37043)

Automatic Merge
Этот коммит содержится в:
Julien Tant
2026-06-14 23:35:26 -07:00
коммит произвёл GitHub
родитель 775c36f827
Коммит acc19baca0
19 изменённых файлов: 513 добавлений и 13 удалений

Просмотреть файл

@@ -1081,6 +1081,18 @@ const AdminDefinition: AdminDefinitionType = {
it.not(it.userHasWritePermissionOnResource(RESOURCE_KEYS.ENVIRONMENT.FILE_STORAGE)),
),
},
{
type: 'number',
key: 'FileSettings.ExtractContentTimeout',
label: defineMessage({id: 'admin.image.extractContentTimeoutTitle', defaultMessage: 'Document content extraction timeout (seconds):'}),
help_text: defineMessage({id: 'admin.image.extractContentTimeoutDescription', defaultMessage: 'Maximum number of seconds spent extracting the searchable content of a single uploaded document. Extractions that exceed this limit are aborted to protect server performance. Set to 0 to disable the timeout.'}),
placeholder: defineMessage({id: 'admin.image.extractContentTimeoutExample', defaultMessage: '10'}),
validate: validators.minValue(0, defineMessage({id: 'admin.image.extractContentTimeout.minValue', defaultMessage: 'Timeout must be 0 or greater.'})),
isDisabled: it.any(
it.not(it.userHasWritePermissionOnResource(RESOURCE_KEYS.ENVIRONMENT.FILE_STORAGE)),
it.configIsFalse('FileSettings', 'ExtractContent'),
),
},
{
type: 'bool',
key: 'FileSettings.ArchiveRecursion',

Просмотреть файл

@@ -1349,6 +1349,10 @@
"admin.image.enableProxyDescription": "When true, enables an image proxy for loading all Markdown images.",
"admin.image.exportDirectoryDescription": "Directory to which files are written. If blank, defaults to ./data/.",
"admin.image.extractContentDescription": "When enabled, supported document types are searchable by their content. Search results for existing documents may be incomplete <link>until a data migration is executed</link>.",
"admin.image.extractContentTimeout.minValue": "Timeout must be 0 or greater.",
"admin.image.extractContentTimeoutDescription": "Maximum number of seconds spent extracting the searchable content of a single uploaded document. Extractions that exceed this limit are aborted to protect server performance. Set to 0 to disable the timeout.",
"admin.image.extractContentTimeoutExample": "10",
"admin.image.extractContentTimeoutTitle": "Document content extraction timeout (seconds):",
"admin.image.extractContentTitle": "Enable document search by content:",
"admin.image.localDescription": "Directory to which files and images are written. If blank, defaults to ./data/.",
"admin.image.localExample": "E.g.: \"./data/\"",

Просмотреть файл

@@ -548,6 +548,7 @@ export type FileSettings = {
Directory: string;
EnablePublicLink: boolean;
ExtractContent: boolean;
ExtractContentTimeout: number;
ArchiveRecursion: boolean;
PublicLinkSalt: string;
InitialFont: string;