Index: pending_manager.py |
diff --git a/pending_manager.py b/pending_manager.py |
index def87d80f4690aeff7e25b23182cc28850106707..6f61d4b8641745cd1b41dce570bed1dcc5824ba9 100644 |
--- a/pending_manager.py |
+++ b/pending_manager.py |
@@ -544,11 +544,18 @@ |
self.context.rietveld.close_issue(pending.issue) |
self.context.rietveld.update_description( |
pending.issue, issue_desc.description) |
+ self.context.rietveld.add_comment( |
+ pending.issue, 'Change committed as %s' % pending.revision) |
except (urllib2.HTTPError, urllib2.URLError) as e: |
# Ignore AppEngine flakiness. |
logging.warning('Unable to fully close the issue') |
- self._discard_pending(pending, |
- 'Change committed as %s' % pending.revision) |
+ # And finally remove the issue. If the close_issue() call above failed, |
+ # it is possible the dashboard will be confused but it is harmless. |
+ try: |
+ self.queue.get(pending.issue) |
+ except KeyError: |
+ logging.error('Internal inconsistency for %d', pending.issue) |
+ self.queue.remove(pending.issue) |
except ( |
checkout.PatchApplicationFailed, patch.UnsupportedPatchFormat) as e: |
raise base.DiscardPending(pending, str(e)) |