move AfterSave method from relay to storage

This commit is contained in:
Gustavo Chain 2023-02-09 01:41:44 +01:00 committed by fiatjaf
parent c7d584da54
commit 304831f749
3 changed files with 12 additions and 24 deletions

View File

@ -57,18 +57,6 @@ func (r *Relay) AcceptEvent(evt *nostr.Event) bool {
return true
}
func (r *Relay) BeforeSave(evt *nostr.Event) {
// do nothing
}
func (r *Relay) AfterSave(evt *nostr.Event) {
// delete all but the 100 most recent ones for each key
r.Storage().(*postgresql.PostgresBackend).DB.Exec(`DELETE FROM event WHERE pubkey = $1 AND kind = $2 AND created_at < (
SELECT created_at FROM event WHERE pubkey = $1
ORDER BY created_at DESC OFFSET 100 LIMIT 1
)`, evt.PubKey, evt.Kind)
}
func main() {
r := Relay{}
if err := envconfig.Process("", &r); err != nil {

View File

@ -70,18 +70,6 @@ func (r *Relay) AcceptEvent(evt *nostr.Event) bool {
return true
}
func (r *Relay) BeforeSave(evt *nostr.Event) {
// do nothing
}
func (r *Relay) AfterSave(evt *nostr.Event) {
// delete all but the 1000 most recent ones for each key
r.Storage().(*postgresql.PostgresBackend).DB.Exec(`DELETE FROM event WHERE pubkey = $1 AND kind = $2 AND created_at < (
SELECT created_at FROM event WHERE pubkey = $1
ORDER BY created_at DESC OFFSET 1000 LIMIT 1
)`, evt.PubKey, evt.Kind)
}
func main() {
r := Relay{}
if err := envconfig.Process("", &r); err != nil {

View File

@ -40,3 +40,15 @@ func (b *PostgresBackend) SaveEvent(evt *nostr.Event) error {
return nil
}
func (b *PostgresBackend) BeforeSave(evt *nostr.Event) {
// do nothing
}
func (b *PostgresBackend) AfterSave(evt *nostr.Event) {
// delete all but the 100 most recent ones for each key
b.DB.Exec(`DELETE FROM event WHERE pubkey = $1 AND kind = $2 AND created_at < (
SELECT created_at FROM event WHERE pubkey = $1
ORDER BY created_at DESC OFFSET 100 LIMIT 1
)`, evt.PubKey, evt.Kind)
}