 				return
 			), 1)
 			getDocsCargo = async.cargo(((couch_toprocess, callback) ->
-				if !r.ready or os.freemem() < config.minMem * 1048576
+				if !r.ready or os.freemem() < config.minMem * 1048576 or lastcount.queue > (lastcount.working * 2)
 					setImmediate ->
 						getDocsCargo.push couch_toprocess
 						callback()

			workque = []
			maxquelen = 1000
			jumpon = 0
			findinque = (id)->
				for obj,ix in workque
					return workque[ix] if obj._id is id

						console.log "Resync of Queue", status_c.onqueue, s_wk._zmq.pending
						resyncQueue()
					updatingStatus = false

					# Updating global status
					lastcount = 
						working : if status_c.working then status_c.working else 0
						queue : if status_c.onqueue then status_c.onqueue else 0
			statusTimer = setInterval updateStatus, 500
			datalog = 
				gauge: ->
