dify - 💡(How to fix) Fix Concurrent MinerU tool invocations fail with ReadTimeout after 5-6 seconds

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

When invoking the MinerU tool node in a workflow with concurrent requests (e.g., 10 parallel requests), 1-3 requests fail with a ReadTimeout error after Error message: An error occurred in the langgenius/mineru/mineru, please contact the author of langgenius/mineru/mineru for help, error type: ReadTimeout, error details:

RAW_BUFFERClick to expand / collapse

Self Checks

  • I have read the Contributing Guide and Language Policy.
  • This is only for bug report, if you would like to ask a question, please head to Discussions.
  • I have searched for existing issues search for existing issues, including closed ones.
  • I confirm that I am using English to submit this report, otherwise it will be closed.
  • 【中文用户 & Non English User】请使用英语提交,否则会被关闭 :)
  • Please do not modify this template :) and fill in all the required fields.

Dify version

1.10.0

Cloud or Self Hosted

Self Hosted (Docker)

Steps to reproduce

Bug Description

When invoking the MinerU tool node in a workflow with concurrent requests (e.g., 10 parallel requests), 1-3 requests fail with a ReadTimeout error after approximately 5 seconds.

Error message: An error occurred in the langgenius/mineru/mineru, please contact the author of langgenius/mineru/mineru for help, error type: ReadTimeout, error details: timed out

Environment

  • Deployment: Docker-based deployment on a remote server
  • Architecture:
    • Dify API + Worker + Plugin Daemon (Docker containers)
    • MinerU service deployed locally on GPU servers (2 GPUs)
    • nginx load balancer for MinerU service (8011 port)
  • Plugin Daemon logs show: /tool/invoke requests taking exactly ~5 seconds before timeout

Steps to Reproduce

  1. Deploy MinerU service on local GPU servers with nginx load balancing
  2. Configure MinerU as a builtin tool in Dify
  3. Create a workflow with MinerU tool node
  4. Send 10 concurrent requests to the workflow
  5. Observe: 1-3 requests fail with ReadTimeout after ~5 seconds

Key Findings

  1. SSRF_DEFAULT_TIME_OUT=60 is correctly set in environment variables
  2. Plugin Daemon's internal HTTP client appears to use httpx with default 5-second timeout
  3. parse.py in MinerU plugin uses requests.post() which has no default timeout
  4. However, httpx is used in _download_and_extract_zip method: httpx.get(url) with no timeout

Question

Where is the 5-second httpx timeout configured for Plugin Daemon's internal HTTP client that calls the MinerU plugin? Is there a hardcoded default timeout that needs to be exposed as a configuration option?

<img width="1858" height="1006" alt="Image" src="https://github.com/user-attachments/assets/fae99ce4-5f8b-4db8-a2b5-ff64134576e5" /> <img width="610" height="388" alt="Image" src="https://github.com/user-attachments/assets/b0c7f308-af17-4e3b-94f3-91674ca3550d" /> <img width="871" height="362" alt="Image" src="https://github.com/user-attachments/assets/f2b898df-6642-4a7f-b6e7-826e70bcfd18" />

✔️ Expected Behavior

all requests success

❌ Actual Behavior

No response

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING