From 87648490fda1d765fb7b78544b2b01847550c82b Mon Sep 17 00:00:00 2001 From: Jebbs Date: Thu, 6 Dec 2018 12:35:30 +0800 Subject: Make configurable the number of days to archive read items --- storage/entry.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'storage') diff --git a/storage/entry.go b/storage/entry.go index 00ef615..7b80ca0 100644 --- a/storage/entry.go +++ b/storage/entry.go @@ -186,12 +186,12 @@ func (s *Storage) UpdateEntries(userID, feedID int64, entries model.Entries, upd return nil } -// ArchiveEntries changes the status of read items to "removed" after 60 days. -func (s *Storage) ArchiveEntries() error { - query := ` - UPDATE entries SET status='removed' - WHERE id=ANY(SELECT id FROM entries WHERE status='read' AND starred is false AND published_at < now () - '60 days'::interval LIMIT 5000) - ` +// ArchiveEntries changes the status of read items to "removed" after specified days. +func (s *Storage) ArchiveEntries(days int) error { + query := fmt.Sprintf(` + UPDATE entries SET status='removed' + WHERE id=ANY(SELECT id FROM entries WHERE status='read' AND starred is false AND published_at < now () - '%d days'::interval LIMIT 5000) + `, days) if _, err := s.db.Exec(query); err != nil { return fmt.Errorf("unable to archive read entries: %v", err) } -- cgit v1.2.3