2014-01-31 4 views
1

Я выполняю процесс, который отнимает сообщения от очереди облаков Rackspace в течение некоторого времени. Некоторое время назад я начал видеть это исключение в моих журналах в строке, где я создавал претензии:Исключение, требующее сообщения от облачных очередей в тумане

undefined method `split' for nil:NilClass 
/home/ash/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/fog-1.19.0/lib/fog/rackspace/models/queues/claim.rb:112:in `create' 
/home/ash/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/fog-1.19.0/lib/fog/rackspace/models/queues/claim.rb:46:in `save' 
/home/ash/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/fog-1.19.0/lib/fog/rackspace/models/queues/claims.rb:36:in `create' 

Что изменилось? Является ли это проблемой тумана или что-то не так с облачными очередями?

ответ

3

Оказалось, что после обновления сервера облачные очереди начали использовать строчные HTTP-заголовки в некоторых своих ответах. В частности, Location теперь location и Content-Type изменен на content-type. HTTP указывает, что заголовки HTTP не чувствительны к регистру, но с 1.19.0 доступ к заголовкам Fog отсутствует.

Это теперь фиксируется в master, так что вы можете зависеть от последней версии кода, добавив в вашей Gemfile:

gem 'fog', github: 'fog/fog' 
+0

Спасибо за помощь с этим и обновление этого. Надеясь сократить выпуск с исправлением когда-нибудь в предыдущих частях этой недели, но не уверен в сроках. – geemus

+0

Я бы надеюсь, что исправление находится вверх по потоку (то есть CloudQueues), а не по нисходящим библиотекам. – rdodev