RoadRunner
  • 🟠General
    • What is RoadRunner?
    • Features
    • Quick Start
    • Installation
    • Configuration
    • Contributing
    • Upgrade and Compatibility
  • 👷PHP Worker
    • Worker
    • Workers pool
    • Developer mode
    • Code Coverage
    • Debugging
    • Environment
    • Manual workers scaling
    • Auto workers scaling
    • RPC
  • 🟢Customization
    • Building RR with a custom plugin
    • Integrating with Golang Apps
    • Writing a Middleware
    • Writing a Jobs Driver
    • Writing a Plugin
    • Events Bus
  • 🔌Plugins
    • Intro into Plugins
    • Centrifuge (WebSockets)
    • Service (Systemd)
    • Configuration
    • Server
    • Locks
    • gRPC
    • TCP
  • 🌐Community Plugins
    • Intro into Community Plugins
    • Circuit Breaker
    • SendRemoteFile
    • RFC 7234 Cache
  • 🔵App Server
    • Production Usage
    • RoadRunner with NGINX
    • RR as AWS Lambda
    • Docker Images
    • CLI Commands
    • Systemd
  • 🔐Key-Value
    • Intro into KV
    • Memcached
    • In-Memory
    • BoltDB
    • Redis
  • 📦Queues and Jobs
    • Intro into Jobs
    • Google Pub/Sub
    • Beanstalk
    • In-Memory
    • RabbitMQ
    • BoltDB
    • Kafka
    • NATS
    • SQS
  • 🕸️HTTP
    • Intro into HTTP
    • Headers and CORS
    • Proxy IP parser
    • Static files
    • X-Sendfile
    • Streaming
    • gzip
  • 📈Logging and Observability
    • OpenTelemetry
    • HealthChecks
    • Access Logs
    • AppLogger
    • Metrics
    • Grafana
    • Logger
  • 🔀Workflow Engine
    • Temporal.io
    • Worker
  • 🧩Integrations
    • Migration from RRv1 to RRv2
    • Spiral Framework
    • Yii
    • Symfony
    • Laravel
    • ChubbyPHP
  • 🧪Experimental Features
    • List of the Experimental Features
  • 🚨Error codes
    • CRC validation failed
    • Allocate Timeout
  • 📚Releases
    • v2025.1.1
    • v2025.1.0
    • v2024.3.5
    • v2024.3.4
    • v2024.3.3
    • v2024.3.2
    • v2024.3.1
    • v2024.3.0
Powered by GitBook
On this page
  • How to fix that?
  • What is allocate_timeout pool option?

Was this helpful?

Edit on GitHub
  1. Error codes

Allocate Timeout

PreviousCRC validation failedNextv2025.1.1

Last updated 5 months ago

Was this helpful?

RoadRunner allocates workers like usual processes (via fork + exec syscalls). While RoadRunner is in the process of creating a worker (connecting to the pipes, TCP, etc.), some part of the worker might freeze the initial handshake. RoadRunner waits pool.allocate_timeout time for handshake to complete and return this error if pool.allocate_timeout exceeded.

How to fix that?

  1. Check the pool.allocate_timeout option. It should be in the form of pool.allocate_timeout: 1s or pool.allocate_timeout: 1h, so you should specify the units of measurement. Also, keep in mind, that 1s for the allocate timeout might be a very small value, try to increase it.

  2. xdebug might freeze the worker spawn while improperly configured. See this tutorial:

  3. If you use a server's relay other than pipes, check . It's responsible for the initial handshake timeout between RR and PHP process established via sockets or TCP.

What is allocate_timeout pool option?

The pool.allocate_timeout is responsible for 2 things in RoadRunner: first - timeout to allocate a PHP worker when RoadRunner is starting up (initializing workers). Second - timeout to take the worker from the internal workers container, for example, when a request arrives.

🚨
link
this options