Przeglądaj źródła

add error handler to each stage of upload pipeline

Brian Gough 11 lat temu
rodzic
commit
d9085a5e5e
1 zmienionych plików z 13 dodań i 4 usunięć
  1. 13 4
      services/track-changes/app/coffee/MongoAWS.coffee

+ 13 - 4
services/track-changes/app/coffee/MongoAWS.coffee

@@ -10,7 +10,12 @@ module.exports = MongoAWS =
 
 	bulkLimit: 10
 
-	archiveDocHistory: (project_id, doc_id, callback = (error) ->) ->
+	archiveDocHistory: (project_id, doc_id, _callback = (error) ->) ->
+
+		callback = (args...) ->
+			_callback(args...)
+			_callback = () ->
+
 		query = {
 			doc_id: ObjectId(doc_id)
 			expiresAt: {$exists : false}
@@ -27,10 +32,14 @@ module.exports = MongoAWS =
 		}
 
 		db.docHistory.find(query)
+			.on 'error', (err) ->
+				callback(err)
 			.pipe JSONStream.stringify()
-				.pipe upload
-				.on 'finish', () ->
-					return callback(null)
+			.pipe upload
+			.on 'error', (err) ->
+				callback(err)
+			.on 'finish', () ->
+				return callback(null)
 
 	unArchiveDocHistory: (project_id, doc_id, callback = (error) ->) ->