forked from EduCraft/curriculum-project-hub
fix(hub): raise Docmind OSS upload timeout past httpx 3s default
SubmitDocParserJobAdvance uploads PDFs to Aliyun OSS via tea/httpx, which defaults readTimeout to 3000ms when RuntimeOptions is empty. Multi-MB teacher PDFs on para silo failed with ReadTimeout(3000) before the job could start. Set connectTimeout=15s and readTimeout=5m.
This commit is contained in:
@@ -1,8 +1,24 @@
|
||||
import { join } from "node:path";
|
||||
import { tmpdir } from "node:os";
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { AliyunDocmindClient, DocmindClientError } from "../../src/capability/docmindClient.js";
|
||||
import {
|
||||
AliyunDocmindClient,
|
||||
DocmindClientError,
|
||||
DOCMIND_CONNECT_TIMEOUT_MS,
|
||||
DOCMIND_READ_TIMEOUT_MS,
|
||||
createDocmindRuntimeOptions,
|
||||
} from "../../src/capability/docmindClient.js";
|
||||
|
||||
describe("createDocmindRuntimeOptions", () => {
|
||||
it("overrides httpx's 3s default so PDF OSS uploads can complete", () => {
|
||||
const runtime = createDocmindRuntimeOptions();
|
||||
// Production failure: ReadTimeout(3000) on docmind OSS upload.
|
||||
expect(DOCMIND_CONNECT_TIMEOUT_MS).toBeGreaterThan(3_000);
|
||||
expect(DOCMIND_READ_TIMEOUT_MS).toBeGreaterThan(3_000);
|
||||
expect(runtime.connectTimeout).toBe(DOCMIND_CONNECT_TIMEOUT_MS);
|
||||
expect(runtime.readTimeout).toBe(DOCMIND_READ_TIMEOUT_MS);
|
||||
});
|
||||
});
|
||||
describe("AliyunDocmindClient local file open", () => {
|
||||
it("rejects a missing input file without crashing the process", async () => {
|
||||
const client = new AliyunDocmindClient();
|
||||
|
||||
Reference in New Issue
Block a user