Mercurial > code > home > repos > gcalendarwatch
changeset 77:7041fae9549f
rework some err-vs-fatal cases
author | drewp@bigasterisk.com |
---|---|
date | Fri, 06 Sep 2024 17:54:35 -0700 |
parents | 470eacf452cb |
children | 1fca0cea3bfe |
files | calsync/sync_event.go |
diffstat | 1 files changed, 11 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/calsync/sync_event.go Fri Sep 06 17:53:21 2024 -0700 +++ b/calsync/sync_event.go Fri Sep 06 17:54:35 2024 -0700 @@ -1,6 +1,7 @@ package main import ( + "fmt" "log" "math/rand" "time" @@ -41,7 +42,12 @@ for _, cal := range cals { rd := newCalEventsReader(mc, gc, router, cal, initialSyncT1, initialSyncT2) - go rd.watchForUpdates() + go func() { + err := rd.watchForUpdates() + if err != nil { + log.Println("ERROR", M.Prefix(rd.cal), "watchForUpdates: ", err, "(aborting this calendar)") + } + }() } return nil } @@ -70,7 +76,7 @@ err := r.updateInitialRange() if err != nil { - log.Fatal(err) + return err } watchLifetime := time.Duration(3) * time.Minute @@ -78,10 +84,11 @@ syncFunc := notificationrouter.SyncFunc(func() { err := r.sync() if err != nil { - log.Fatal(err) + log.Fatalln("ERROR", M.Prefix(r.cal), "sync: ", err) } }) go r.renewWatchEventsForever(watchLifetime, syncFunc) + return nil } func (r *calEventsReader) watchForUpdatesJitteredStartup() { @@ -126,7 +133,7 @@ func (r *calEventsReader) sync() error { events, nextSyncToken, err := r.gc.ListEventUpdates(r.cal, r.syncToken) if err != nil { - return err + return fmt.Errorf("ListEventUpdates: %v", err) } r.syncToken = nextSyncToken for _, ev := range events {