internal/postgres: delete from search_documents in DeleteModule

All matching rows in search_documents are now deleted in DeleteModule.
In a later CL, we will be dropping the search_documents.packages FK, so
the deletes will no longer cascade to the search_documents table.

For golang/go#39629

Change-Id: I4b0bb2f5ca12ace070ddf8e65e8a740dcd6a9e8f
Reviewed-on: https://go-review.googlesource.com/c/pkgsite/+/262775
Trust: Julie Qiu <julie@golang.org>
Run-TryBot: Julie Qiu <julie@golang.org>
TryBot-Result: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jonathan Amsterdam <jba@google.com>
diff --git a/internal/postgres/insert_module.go b/internal/postgres/insert_module.go
index 8afefd4..794617c 100644
--- a/internal/postgres/insert_module.go
+++ b/internal/postgres/insert_module.go
@@ -707,10 +707,12 @@
 		if _, err := tx.Exec(ctx, stmt, modulePath, resolvedVersion); err != nil {
 			return err
 		}
-
 		if _, err = tx.Exec(ctx, `DELETE FROM version_map WHERE module_path = $1 AND resolved_version = $2`, modulePath, resolvedVersion); err != nil {
 			return err
 		}
+		if _, err = tx.Exec(ctx, `DELETE FROM search_documents WHERE module_path = $1 AND version = $2`, modulePath, resolvedVersion); err != nil {
+			return err
+		}
 
 		var x int
 		err = tx.QueryRow(ctx, `SELECT 1 FROM modules WHERE module_path=$1 LIMIT 1`, modulePath).Scan(&x)