2011-01-10 5 views
0

может у меня помочь мне, когда я путешествовал, но не нашел никакой информации. Я работаю с коллекцией коллекции mongoDB с использованием Ruby. Мне нужно обновить документы в соответствии с идентификатором i, полученным из запроса, но он никогда не работает. вот пример моего кодаMongoDb capped collection

курсор = coll.find ({ "EndTime" => ноль})

begin 

    while row = cursor.next_document 
    if !alive row["Pid"] 
     coll.update({"_id"=>row["_id"]}, { "$set" => { "EndTime" =>Time.now}}) 
    end 
    end 

rescue 

end 

спасибо большого

+0

Было бы полезно, если бы вы могли объяснить немного больше, что это такое, что не работает, это не так, как если бы мы могли запускать ваш код. Что делает метод «живой», например. Разве это не так, что утверждение if никогда не является истинным? – Theo

ответ

3

Объектов в блокированном коллекции не разрешаются расти. Удостоверьтесь, что при вставке у вас уже есть место для «EndTime» prealocated.