phalcon/cphalcon · error · Phalcon\Queue\Exceptions\Exception
{underlying Storage exception message}
Error message
{underlying Storage exception message} What it means
Relay guard in RedisConnectionFactory: any Phalcon\Storage exception raised while obtaining the underlying Redis adapter (connection failure, authentication error, SELECT database failure) is re-thrown as a queue Exception with the storage exception's original message, code, and previous exception. It is a sentinel-style wrapper ensuring every queue adapter failure honors the QueueThrowable contract — the real cause is described by the wrapped storage message.
Solutions
- Read the wrapped message for the root cause (connection refused, AUTH failure, wrong DB index)
- Verify Redis host, port, auth, and database index options passed to the factory
- Confirm the Redis server is running and reachable
- Inspect the previous exception in the chain for full storage-level detail
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at phalcon/Queue/Adapter/Redis/RedisConnectionFactory.zep:97 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of phalcon/cphalcon@b7419de9cd (2026-08-21).
Data as JSON: /api/errors/ef715099c58a3f14.
Report an issue: GitHub.
Appendix: source
Thrown at phalcon/Queue/Adapter/Redis/RedisConnectionFactory.zep:97
let adapter = new StorageRedis(
new SerializerFactory(),
array_merge(
options,
[
"prefix" : "",
"defaultSerializer" : "none"
]
)
);
/**
* Surface connect/auth/select failures as a queue exception so every
* adapter honors the QueueThrowable contract.
*/
try {
let redis = adapter->getAdapter();
} catch StorageException, e {
throw new Exception(e->getMessage(), (int) e->getCode(), e);
}
return new RedisContext(redis, prefix, pollInterval);
}
}
View on GitHub (pinned to b7419de9cd)