internal/worker: schedule fetch of std branch on not found

The worker handler that schedules fetches of supported stdlib branches
has been failing when the version_map table doesn't have the branch.
Schedule a fetch in that case instead, because it indicates that we
need to fetch the branch for the first time.

Change-Id: Ic9b2faff1bd50f9b22d2601eabf6feb3b394e95f
Reviewed-on: https://go-review.googlesource.com/c/pkgsite/+/349050
Trust: Jonathan Amsterdam <jba@google.com>
Run-TryBot: Jonathan Amsterdam <jba@google.com>
Reviewed-by: Julie Qiu <julie@golang.org>
Reviewed-by: Jamal Carvalho <jamal@golang.org>
diff --git a/internal/worker/server.go b/internal/worker/server.go
index 899caa3..3113827 100644
--- a/internal/worker/server.go
+++ b/internal/worker/server.go
@@ -490,11 +490,17 @@
 		if err != nil {
 			return err
 		}
+		var resolvedVersionDB string
 		vm, err := s.db.GetVersionMap(r.Context(), stdlib.ModulePath, requestedVersion)
-		if err != nil {
+		switch {
+		case err == nil:
+			resolvedVersionDB = vm.ResolvedVersion
+		case errors.Is(err, derrors.NotFound):
+			resolvedVersionDB = ""
+		default:
 			return err
 		}
-		if vm.ResolvedVersion != resolvedVersion {
+		if resolvedVersionDB != resolvedVersion {
 			if _, err := s.queue.ScheduleFetch(r.Context(), stdlib.ModulePath, requestedVersion, nil); err != nil {
 				return fmt.Errorf("error scheduling fetch for %s: %w", requestedVersion, err)
 			}