0
我使用下面的延遲的方法在我的控制器創建一個延遲的工作中創建新的工作:軌道延遲工作
JobProcessor.delay(:run_at => Time.now).process_job(options)
現在process_job方法裏面我做
chunks = options[:collection].each_splice(10).to_a
chunks.each do |chunk|
self.delay(:run_at => Time.now).chunk_job
end
當我向URL發送請求時,這給我錯誤stack level too deep
可能是什麼問題?請幫忙。
當您嘗試運行代碼而沒有調用延遲時會發生什麼?我想你可能會得到相同的'堆棧級別太深'的錯誤,這通常意味着你的代碼中有一個無限循環。沒有額外的上下文就很難給出進一步的具體見解。我會打開控制檯並深入分塊......(它是否按照你期望的那樣做?)另外,chunk_job方法可能會發生問題。 –
我做了一些改變,它爲我工作。 @AngeloChrysoulakis代碼中沒有無限循環,因爲它沒有'delay'調用。我無法弄清楚實際問題是什麼,但現在它爲我工作。 – Rohit