Tencent/WeKnora · error

failed to update knowledge: %w

Error message

failed to update knowledge: %w

What it means

Thrown by UpdateLastFAQImportResultDisplayStatus when repo.UpdateKnowledge fails to persist the knowledge after toggling DisplayStatus on the last FAQ import result. A database write failure at the final step of the status toggle.

Source

Thrown at internal/application/service/knowledge_faq_import.go:2854

	if err != nil {
		return fmt.Errorf("failed to parse FAQ import result: %w", err)
	}

	if result == nil {
		return werrors.NewNotFoundError("no FAQ import result found")
	}

	// 更新显示状态
	result.DisplayStatus = displayStatus

	// 保存更新后的结果
	if err := faqKnowledge.SetLastFAQImportResult(result); err != nil {
		return fmt.Errorf("failed to set FAQ import result: %w", err)
	}

	// 更新数据库
	if err := s.repo.UpdateKnowledge(ctx, faqKnowledge); err != nil {
		return fmt.Errorf("failed to update knowledge: %w", err)
	}

	return nil
}

View on GitHub (pinned to 988cbb0330)

Solutions

  1. Check database connectivity and retry
  2. Ensure the knowledge row was not concurrently modified (optimistic-lock conflict)
  3. Inspect the wrapped error for constraint or timeout causes
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at internal/application/service/knowledge_faq_import.go:2854 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/e9d0c06163213821. Report an issue: GitHub.