Tencent/WeKnora · error
failed to initialize task: %w
Error message
failed to initialize task: %w
What it means
Thrown when saveFAQImportProgress fails to persist the initial FAQImportProgress record (status pending) for the newly created import task, typically a Redis write failure. The task cannot be tracked, so the import aborts before enqueueing.
Source
Thrown at internal/application/service/knowledge_faq_import.go:119
progress := &types.FAQImportProgress{
TaskID: taskID,
KBID: kbID,
KnowledgeID: knowledgeID,
Status: types.FAQImportStatusPending,
Progress: 0,
Total: len(payload.Entries),
Processed: 0,
SuccessCount: 0,
FailedCount: 0,
FailedEntries: make([]types.FAQFailedEntry, 0),
Message: "任务已创建,等待处理",
CreatedAt: time.Now().Unix(),
UpdatedAt: time.Now().Unix(),
DryRun: payload.DryRun,
}
if err := s.saveFAQImportProgress(ctx, progress); err != nil {
logger.Errorf(ctx, "Failed to initialize FAQ import task status: %v", err)
return "", fmt.Errorf("failed to initialize task: %w", err)
}
logger.Infof(ctx, "FAQ import task initialized: %s, kb_id: %s, total entries: %d, dry_run: %v",
taskID, kbID, len(payload.Entries), payload.DryRun)
// Enqueue FAQ import task to Asynq
logger.Info(ctx, "Enqueuing FAQ import task to Asynq")
// 构建任务 payload
taskPayload := types.FAQImportPayload{
TenantID: tenantID,
TaskID: taskID,
KBID: kbID,
KnowledgeID: knowledgeID,
Mode: payload.Mode,
DryRun: payload.DryRun,
EnqueuedAt: enqueuedAt,
InstanceID: instanceID,View on GitHub (pinned to 988cbb0330)
Solutions
- Check Redis availability and retry the import request
- Verify the progress key is writable and not blocked by eviction policy or ACLs
- Confirm the task ID / key format is not colliding with an existing record
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at internal/application/service/knowledge_faq_import.go:119 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Tencent/WeKnora@988cbb0330 (2026-09-02).
Data as JSON: /api/errors/065744fd08b9c8bd.
Report an issue: GitHub.