Tencent/WeKnora · error

download jsonl status %d

Error message

download jsonl status %d

What it means

Protocol error in PaddleOCRVLCloudReader.fetchResults: the SSRF-safe GET for the result JSONL URL returned a non-200 status, so the parsed-output download failed. The %d records the status; distinct from the 'download jsonl' network error raised just above it for transport failures.

Source

Thrown at internal/infrastructure/docparser/paddleocr_vl_cloud_converter.go:275

				Text   string            `json:"text"`
				Images map[string]string `json:"images"`
			} `json:"markdown"`
		} `json:"layoutParsingResults"`
	} `json:"result"`
}

func (c *PaddleOCRVLCloudReader) fetchResults(jsonlURL string) (string, map[string]string, error) {
	if err := utils.ValidateURLForSSRF(jsonlURL); err != nil {
		return "", nil, fmt.Errorf("jsonl URL blocked by SSRF check: %v", err)
	}
	client := utils.NewSSRFSafeHTTPClient(utils.SSRFSafeHTTPClientConfig{Timeout: 120 * time.Second, MaxRedirects: 5})
	resp, err := client.Get(jsonlURL)
	if err != nil {
		return "", nil, fmt.Errorf("download jsonl: %w", err)
	}
	defer resp.Body.Close()
	if resp.StatusCode != http.StatusOK {
		return "", nil, fmt.Errorf("download jsonl status %d", resp.StatusCode)
	}
	data, err := io.ReadAll(resp.Body)
	if err != nil {
		return "", nil, fmt.Errorf("read jsonl body: %w", err)
	}

	texts := make([]string, 0)
	images := make(map[string]string)
	for _, line := range strings.Split(strings.TrimSpace(string(data)), "\n") {
		line = strings.TrimSpace(line)
		if line == "" {
			continue
		}
		var parsed paddleOCRVLCloudResultLine
		if err := json.Unmarshal([]byte(line), &parsed); err != nil {
			logger.Errorf(context.Background(), "[PaddleOCR-VL Cloud] skip malformed jsonl line: %v", err)
			continue
		}

View on GitHub (pinned to 988cbb0330)

Solutions

  1. Retry shortly; result files may propagate with delay
  2. Re-run the job if the JSONL URL has expired
  3. Check the embedded status for 403/404 specifics
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at internal/infrastructure/docparser/paddleocr_vl_cloud_converter.go:275 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/196d8c2f22b721d4. Report an issue: GitHub.