         @updateTransferState(model, count: response.count)
       error: (err) =>
         return if @_terminated
+        @_resumeTimer.backoff()
+        @_resumeTimer.start()
 
   fetchCollectionPage: (model, params = {}) ->
     requestOptions =
       error: (err) =>
         return if @_terminated
+        @_resumeTimer.backoff()
+        @_resumeTimer.start()
         @updateTransferState(model, {busy: false, complete: false, error: err.toString()})
       success: (json) =>
         return if @_terminated

CoffeeHelpers = require './coffee-helpers'

PAGE_SIZE = 250

module.exports =
class NylasSyncWorker

    ,100
    @_writeState()
    @trigger()

NylasSyncWorker.BackoffTimer = BackoffTimer
