試圖找出如何使重試工作。firebase隊列 - 重試不起作用?
這是我的FB排隊的樣子:
{
"specs" : {
"default_spec" : {
"retries" : 3,
"timeout" : 60000
}
},
"tasks" : {
}
}
,這是我正在測試,如果試運行:
const queue = new Queue(getFirebaseRef(),{'numWorkers': 10} , function (data, progress, resolve, reject) {
console.log('processing queue message:' + JSON.stringify(data));
progress(50);
setTimeout(()=>{
reject(new Error("error while processing blabla"));
},2000);
});
所以當我推新任務排隊,這是怎麼看起來我的工作人員處理後:
{
"-KcsTIDBAq1S_fdiwsv6" : {
"_error_details" : {
"attempts" : 1,
"error" : "error while processing blabla",
"error_stack" : "Error: error while processing blabla\n at Timeout.setTimeout ...,
"previous_state" : "in_progress"
},
"_progress" : 50,
"_state" : "error",
"_state_changed" : 1487089675432,
"body" : {
"testing" : "this_is_a_test_task"
}
}
}
所以我希望嘗試是3,我也沒有秈稻在處理3個任務的服務中。
問題是,我怎樣才能讓重試工作。 值得一提的是,這是我閱讀後做的documentation
謝謝回答,對不起,不寫我也試圖在選擇發送「規範ID」,但是當我試過這個工人只是沒有處理任何物品。 但我找到了你鏈接的github問題的解決方案。 我現在寫答案。 再次感謝 –