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

@ -234,6 +234,10 @@ func (d *Driver) DeleteMemo(ctx context.Context, delete *store.DeleteMemo) error
return err
}
if err := d.Vacuum(ctx); err != nil {
// Prevent linter warning.
return err
}
return nil
}
@ -268,3 +272,22 @@ func (d *Driver) FindMemosVisibilityList(ctx context.Context, memoIDs []int32) (
return visibilityList, nil
}
func vacuumMemo(ctx context.Context, tx *sql.Tx) error {
stmt := `
DELETE FROM
memo
WHERE
creator_id NOT IN (
SELECT
id
FROM
user
)`
_, err := tx.ExecContext(ctx, stmt)
if err != nil {
return err
}
return nil
}