Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions tools/deployment/spider-helm/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ spiderConfig:
execution_manager:
connection_pool_size: 4
liveness:
scheduler_heartbeat_interval_sec: 10
storage_heartbeat_interval_sec: 10
scheduler_heartbeat_interval_sec: 1
storage_heartbeat_interval_sec: 1
log_level: "INFO"
scheduler_poll_wait_ms: 1000
task_executor:
Expand All @@ -59,12 +59,12 @@ spiderConfig:
scheduler:
policy: "round_robin"
config:
active_job_queue_capacity: 64
active_job_queue_capacity: 16
cleanup_ready_task_capacity: 256
commit_ready_task_capacity: 256
dispatch_queue_capacity: 64
dispatch_queue_capacity: 16
finalizing_job_expiration_timeout_sec: 300
ready_task_capacity: 65536
ready_task_capacity: 1048576
Comment on lines +62 to +67

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🩺 Stability & Availability | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

rg -n -C 8 \
  'ready_task_capacity|task_capacity|resources:|limits:|memory:' .

Repository: y-scope/spider

Length of output: 27472


🏁 Script executed:

#!/usr/bin/env bash
set -euo pipefail

echo "== helm chart templates for scheduler pod =="
for f in $(git ls-files 'tools/deployment/spider-helm/templates/*schedule*' 'tools/deployment/spider-helm/templates/*scheduler*' 'tools/deployment/spider-helm/templates/*' | egrep -i 'scheduler|schedule|deployment|statefulset|daemonset' || true); do
  echo "--- $f"
  wc -l "$f"
  sed -n '1,220p' "$f"
done

echo "== values relevant to scheduler/storage resources =="
sed -n '1,140p' tools/deployment/spider-helm/values.yaml | nl -ba

echo "== search for scheduler image/env/resource references =="
rg -n -C 4 '\${?*scheduler|scheduler.*image|image:|resources:|limits:|memory:|ready_task_capacity|task_capacity|RoundRobinConfig' tools/deployment/spider-helm tools/deployment || true

Repository: y-scope/spider

Length of output: 18540


Confirm scheduler memory before shipping the one-million-task buffer.

ready_task_capacity is the total pending ready tasks buffered in the scheduler, and this value now matches storage.runtime.ready_queue_config.task_capacity. The scheduler deployment does not set Kubernetes resource limits in this chart, and the repository does not contain an OOM/queue-saturation test for the million-entry schedule. Add a memory limit and a load test before release.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@tools/deployment/spider-helm/values.yaml` around lines 62 - 67, Before
shipping the one-million-task buffer configured by ready_task_capacity in the
scheduler values, add an explicit Kubernetes memory resource limit to this
chart’s scheduler deployment and create a load test that exercises the
million-entry ready queue, including OOM and queue-saturation behavior. Ensure
the test validates the configured capacity under the deployment’s memory limit.

storage_poll_timeout_ms: 10
tick_interval_ms: 5

Expand Down
Loading