[status] Stop and Restart the ModifiedTasks if any error occurs

Bug: skia:
Change-Id: I2816b4bbead9b8c46576ac8747efeb5c173cf55d
Reviewed-on: https://skia-review.googlesource.com/c/179520
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
diff --git a/status/go/incremental/tasks.go b/status/go/incremental/tasks.go
index 74d4f47..3bdd34b 100644
--- a/status/go/incremental/tasks.go
+++ b/status/go/incremental/tasks.go
@@ -51,6 +51,7 @@
 // just "return c.Reset(...)".  Assumes the caller holds a lock.
 func (c *taskCache) Reset(w *window.Window) (map[string][]*Task, bool, error) {
 	sklog.Infof("Resetting DB connection.")
+	c.db.StopTrackingModifiedTasks(c.queryId)
 	c.queryId = ""
 	queryId, err := c.db.StartTrackingModifiedTasks()
 	if err != nil {
@@ -77,11 +78,9 @@
 		return c.Reset(w)
 	}
 	newTasks, err := c.db.GetModifiedTasks(c.queryId)
-	if db.IsUnknownId(err) {
-		sklog.Warningf("Connection to db lost; re-initializing cache from scratch.")
+	if err != nil {
+		sklog.Errorf("Connection to db lost; re-initializing cache from scratch. Error: %s", err)
 		return c.Reset(w)
-	} else if err != nil {
-		return nil, false, err
 	}
 	return mapTasks(newTasks), false, nil
 }