Tencent/WeKnora · error

failed to create summary chunk: %w

Error message

failed to create summary chunk: %w

What it means

Thrown when chunkService.CreateChunks fails to persist the newly generated summary chunk (ChunkTypeSummary, parented to the first text chunk). The summary text exists but could not be stored, so indexing is skipped.

Source

Thrown at internal/application/service/knowledge_process.go:1325

			TenantID:        knowledge.TenantID,
			KnowledgeID:     knowledge.ID,
			KnowledgeBaseID: knowledge.KnowledgeBaseID,
			Content:         fmt.Sprintf("# Summary\n%s", summary),
			ChunkIndex:      maxChunkIndex + 1,
			IsEnabled:       true,
			CreatedAt:       time.Now(),
			UpdatedAt:       time.Now(),
			StartAt:         0,
			EndAt:           0,
			ChunkType:       types.ChunkTypeSummary,
			ParentChunkID:   textChunks[0].ID,
		}

		// Save summary chunk
		if err := s.chunkService.CreateChunks(ctx, []*types.Chunk{summaryChunk}); err != nil {
			logger.Errorf(ctx, "Failed to create summary chunk: %v", err)
			summaryErr = err
			return fmt.Errorf("failed to create summary chunk: %w", err)
		}

		// Index summary chunk
		tenantInfo, err := s.tenantRepo.GetTenantByID(ctx, payload.TenantID)
		if err != nil {
			logger.Errorf(ctx, "Failed to get tenant info: %v", err)
			summaryErr = err
			return fmt.Errorf("failed to get tenant info: %w", err)
		}
		ctx = context.WithValue(ctx, types.TenantInfoContextKey, tenantInfo)

		retrieveEngine, err := retriever.CreateRetrieveEngineForKB(
			ctx, s.retrieveEngine, s.ownership, tenantInfo.ID, kb.VectorStoreID)
		if err != nil {
			logger.Errorf(ctx, "Failed to init retrieve engine: %v", err)
			summaryErr = err
			return fmt.Errorf("failed to init retrieve engine: %w", err)
		}

View on GitHub (pinned to 988cbb0330)

Solutions

  1. Check database connectivity and retry the summary task
  2. Verify chunk table constraints (index, parent ID, knowledge ID)
  3. Inspect the wrapped error from CreateChunks for the failing insert
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at internal/application/service/knowledge_process.go:1325 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/4369fb5ffd4e63cd. Report an issue: GitHub.