From b0deed239ea8afe7c856eb9112cb0925eac30e26 Mon Sep 17 00:00:00 2001 From: bel Date: Sat, 22 Jun 2019 17:06:50 -0600 Subject: [PATCH] fix leveldb problems Former-commit-id: f17fe73babf8910a2031323ffb2a28979082a4dd --- .gitignore | 1 + monitor/queue.go | 8 ++++++-- testdata/2add | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 06dfd38..9d94cb3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ rssmon3 exec-rssmon3 **.sw* +**testdata diff --git a/monitor/queue.go b/monitor/queue.go index 95cf896..0be33bc 100644 --- a/monitor/queue.go +++ b/monitor/queue.go @@ -1,7 +1,9 @@ package monitor import ( + "fmt" "local/rssmon3/config" + "local/storage" "log" "github.com/golang-collections/go-datastructures/queue" @@ -17,13 +19,15 @@ func newQueue() (*Queue, error) { q := queue.NewPriorityQueue(1) db := config.Values().DB keys, err := db.List([]string{nsQueued}) - if err != nil { + if err == storage.ErrNotFound { + keys = []string{} + } else if err != nil { return nil, err } for _, key := range keys { b, err := db.Get(key, nsQueued) if err != nil { - return nil, err + return nil, fmt.Errorf("failed to get %s:%s: %v", nsQueued, key, err) } i := &Item{} if err := i.Decode(b); err != nil { diff --git a/testdata/2add b/testdata/2add index bfb1bd6..feb6178 100644 --- a/testdata/2add +++ b/testdata/2add @@ -38,7 +38,7 @@ https://www.youtube.com/feeds/videos.xml?channel_id=UCs-w7E2HZWwXmjt9RTvBB_A https://roosterteeth.com/show/rt-podcast/feed/mp3 podcast ".*" ".*" "6h" ' feedsB="$(printf "%s\n" "$feeds" | grep -v '^$' | tail -n 1)" -#feeds="$feedsB" +feeds="$feedsB" defaultIF='""' defaultCF='""'