Inconsistent Database: Threat List Mismatches
- Dominant language
- Go
- Stars
- 503
- Forks
- 139
- PR merge metrics
- No merged PRs in 30d
Description
Hello!
We're using the `sbserver` binary. Over the past 24 hours we've been seeing a series of inconsistent database errors that seem to resolve themselves after a database fetch, but during that 30 minute time window every request generates an error.
Log Excerpt
```
safebrowsing: 2021/01/12 11:16:20 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 11:16:21 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 11:16:21 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 11:16:24 database.go:389: database is now healthy
safebrowsing: 2021/01/12 11:16:24 safebrowser.go:563: background threat list updated
safebrowsing: 2021/01/12 11:16:24 safebrowser.go:557: Next update in 30m29s
/* snipped */
safebrowsing: 2021/01/12 17:49:46 database.go:243: Server requested next update in 29m49.769s
safebrowsing: 2021/01/12 17:49:46 database.go:257: update failure: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 17:49:46 safebrowser.go:557: Next update in 29m49.769s
safebrowsing: 2021/01/12 17:49:46 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 17:49:46 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 17:49:46 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
```
We also sometimes see this variation.
Log Excerpt
```
safebrowsing: 2021/01/12 18:19:36 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 18:19:37 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 18:19:37 database.go:243: Server requested next update in 29m56.277s
safebrowsing: 2021/01/12 18:19:37 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 18:19:37 safebrowser.go:419: inconsistent database: safebrowsing: threat list SHA256 mismatch
safebrowsing: 2021/01/12 18:19:38 database.go:389: database is now healthy
safebrowsing: 2021/01/12 18:19:39 safebrowser.go:563: background threat list updated
safebrowsing: 2021/01/12 18:19:39 safebrowser.go:557: Next update in 29m56.277s
safebrowsing: 2021/01/12 18:49:35 database.go:243: Server requested next update in 30m23.724s
safebrowsing: 2021/01/12 18:49:38 safebrowser.go:563: background threat list updated
safebrowsing: 2021/01/12 18:49:38 safebrowser.go:557: Next update in 30m23.724s
safebrowsing: 2021/01/12 19:20:02 database.go:243: Server requested next update in 30m13.773s
safebrowsing: 2021/01/12 19:20:02 database.go:248: invalid server response: got 0, want 3 threat lists
safebrowsing: 2021/01/12 19:20:02 safebrowser.go:557: Next update in 30m13.773s
safebrowsing: 2021/01/12 19:20:02 safebrowser.go:419: inconsistent database: safebrowsing: threat list count mismatch
safebrowsing: 2021/01/12 19:20:02 safebrowser.go:419: inconsistent database: safebrowsing: threat list count mismatch
```
This is what is returned from `status`:
```
{"Stats":{"QueriesByDatabase":55981296,"QueriesByCache":34,"QueriesByAPI":22829,"QueriesFail":24489,"DatabaseUpdateLag":0},"Error":""}
```
Do you know what the issue might be? Is there a suggested way to debug this further? The other "inconsistent database" issues I saw looked to be accompanied by unexpected status codes.
Contributor guide
Assessment
This issue has not been assessed yet.