Постоянная очередь Gearman не сохранена в Postgres
У меня проблема с Gearman 0.32 (ppa:gearman-developers/ppa)- он не сохраняет очередь в Postgres для сохранения очереди.
- Gearman работает, я могу добавлять задания (пример с многословностью DEBUG на pastebin для лучшей читабельности: http://pastebin.com/3uRds4yi)
- Строка подключения Postgres в порядке - мне удалось войти / получить доступ к БД, используя те же данные с того же хоста
- Gearman подключается к Postgres - если таблица очередей не существует в БД, она создает ее.
И несмотря на все это НИЧЕГО не добавляется в БД. У меня зарегистрировано 0 рабочих, и когда я добавляю новые задания в очередь, они ставятся в очередь, но никогда не сохраняются в постоянном хранилище.
1 ответ
Решение
Нашел проблему:
Когда используешь Pecl Gearman
задачи расширения, добавленные с помощью GearmanClient::addTask
(и варианты функций с высоким / низким приоритетом) будут добавлены в очередь заданий Gearman, но не сохранены в базе данных, если время ожидания PHP-сценария истекло GearmanClient::runTasks
возвращает результат.
использование GearmanClient::addTaskBackground
вместо.