chore: store vacuum and clean (#2293)

* Move all vacuum code into driver

* Remove db from Store
This commit is contained in:
Athurg Gooth
2023-09-27 09:27:31 +08:00
committed by GitHub
parent 9abf294eed
commit ca98367a0a
23 changed files with 239 additions and 238 deletions

View File

@ -2,6 +2,7 @@ package sqlite
import (
"context"
"database/sql"
"fmt"
"strings"
@ -80,3 +81,28 @@ func (d *Driver) DeleteMemoOrganizer(ctx context.Context, delete *store.DeleteMe
}
return nil
}
func vacuumMemoOrganizer(ctx context.Context, tx *sql.Tx) error {
stmt := `
DELETE FROM
memo_organizer
WHERE
memo_id NOT IN (
SELECT
id
FROM
memo
)
OR user_id NOT IN (
SELECT
id
FROM
user
)`
_, err := tx.ExecContext(ctx, stmt)
if err != nil {
return err
}
return nil
}