Review feedback

This commit is contained in:
Sam Stern
2018-09-24 14:15:03 -07:00
parent 95389a914a
commit 8b97ff82da

View File

@@ -301,6 +301,7 @@ FirestoreDelete.prototype._recursiveBatchDelete = function() {
var pageIncoming = false;
var lastDocName = undefined;
var retried = {};
var failures = [];
var queueLoop = function() {
@@ -351,10 +352,11 @@ FirestoreDelete.prototype._recursiveBatchDelete = function() {
numOutstanding--;
})
.catch(function(e) {
// For server errors, just throw the document back into the queue.
if (e.status >= 500 && e.status < 600) {
// For server errors, retry if the document has not yet been retried.
if (e.status >= 500 && e.status < 600 && !retried[toDelete.name]) {
logger.debug("Server error deleting doc " + toDelete.name, e);
queue.push(toDelete);
retried[toDelete.name] = true;
} else {
logger.debug("Fatal error deleting doc " + toDelete.name, e);
failures.push(toDelete);
@@ -366,7 +368,7 @@ FirestoreDelete.prototype._recursiveBatchDelete = function() {
return false;
};
return new Promise(function(resolve) {
return new Promise(function(resolve, reject) {
var intervalId = setInterval(function() {
if (queueLoop()) {
clearInterval(intervalId);