user/dev discussion of public-inbox itself
 help / color / mirror / code / Atom feed
* [PATCH 0/3] www: more aggressive cleanup of SQLite DBs
@ 2021-09-28 23:11 Eric Wong
  2021-09-28 23:11 ` [PATCH 1/3] www: do not bump {over} refcnt on long responses Eric Wong
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Eric Wong @ 2021-09-28 23:11 UTC (permalink / raw)
  To: meta

While extindex allows the elimination of per-inbox Xapian DB
shards, per-inbox over.sqlite3 and msgmap.sqlite3 are still
required, and they can waste system resources when there are
hundreds/thousands of inboxes and most of them sit idle..

Since reopening them isn't expensive, close them aggressively to
reduce memory pressure and the likelyhood of swapping.

We'll also take advantage of the new ->add_uniq_timer API
to amortize the cost of cleanups and avoid globals in the
inbox class.

Eric Wong (3):
  www: do not bump {over} refcnt on long responses
  inbox: rewrite cleanup to be more aggressive
  inbox: drop memoization/preload, cleanup expires caches

 lib/PublicInbox/Git.pm        | 12 ++++---
 lib/PublicInbox/GzipFilter.pm |  6 ++++
 lib/PublicInbox/Inbox.pm      | 60 ++++++++++++++---------------------
 lib/PublicInbox/Mbox.pm       | 29 +++++++----------
 lib/PublicInbox/View.pm       |  6 ++--
 lib/PublicInbox/WWW.pm        |  9 ------
 t/nntp.t                      |  1 -
 7 files changed, 52 insertions(+), 71 deletions(-)

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-09-28 23:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-28 23:11 [PATCH 0/3] www: more aggressive cleanup of SQLite DBs Eric Wong
2021-09-28 23:11 ` [PATCH 1/3] www: do not bump {over} refcnt on long responses Eric Wong
2021-09-28 23:11 ` [PATCH 2/3] inbox: rewrite cleanup to be more aggressive Eric Wong
2021-09-28 23:11 ` [PATCH 3/3] inbox: drop memoization/preload, cleanup expires caches Eric Wong

Code repositories for project(s) associated with this inbox:

	https://80x24.org/public-inbox.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).