diff --git a/internal/postgres/delete.go b/internal/postgres/delete.go
index 4b36663..a8cb0ca 100644
--- a/internal/postgres/delete.go
+++ b/internal/postgres/delete.go
@@ -40,8 +40,7 @@
 			return err
 		}
 		// No versions of this module exist; remove it from imports_unique.
-		_, err = tx.Exec(ctx, `DELETE FROM imports_unique WHERE from_module_path = $1`, modulePath)
-		return err
+		return deleteModuleFromImportsUnique(ctx, tx, modulePath)
 	})
 }
 
@@ -124,6 +123,16 @@
 	return nil
 }
 
+func deleteModuleFromImportsUnique(ctx context.Context, db *database.DB, modulePath string) (err error) {
+	defer derrors.Wrap(&err, "deleteModuleFromImportsUnique(%q)", modulePath)
+
+	_, err = db.Exec(ctx, `
+		DELETE FROM imports_unique
+		WHERE from_module_path = $1
+	`, modulePath)
+	return err
+}
+
 // DeletePseudoversionsExcept deletes all pseudoversions for the module except
 // the provided resolvedVersion.
 func (db *DB) DeletePseudoversionsExcept(ctx context.Context, modulePath, resolvedVersion string) (err error) {
diff --git a/internal/postgres/insert_module.go b/internal/postgres/insert_module.go
index f406ca8..e664f60 100644
--- a/internal/postgres/insert_module.go
+++ b/internal/postgres/insert_module.go
@@ -317,9 +317,7 @@
 
 	// Remove the previous rows for this module. We'll replace them with
 	// new ones below.
-	if _, err := tx.Exec(ctx,
-		`DELETE FROM imports_unique WHERE from_module_path = $1`,
-		m.ModulePath); err != nil {
+	if err := deleteModuleFromImportsUnique(ctx, tx, m.ModulePath); err != nil {
 		return err
 	}
 
@@ -666,10 +664,7 @@
 			if err := deleteModuleOrPackagesInModuleFromSearchDocuments(ctx, tx, modulePath, nil); err != nil {
 				return err
 			}
-			if _, err := tx.Exec(ctx, `
-				DELETE FROM imports_unique
-				WHERE from_module_path = $1
-			`, modulePath); err != nil {
+			if err := deleteModuleFromImportsUnique(ctx, tx, modulePath); err != nil {
 				return err
 			}
 			log.Debugf(ctx, "ReInsertLatestVersion(%q): no good version; removed from search_documents and imports_unique", modulePath)
@@ -736,7 +731,7 @@
 		}
 
 		// Remove old rows from imports_unique.
-		if _, err := tx.Exec(ctx, `DELETE FROM imports_unique WHERE from_module_path = $1`, modulePath); err != nil {
+		if err := deleteModuleFromImportsUnique(ctx, tx, modulePath); err != nil {
 			return err
 		}
 
