diff options
author | Lennart Poettering <lennart@poettering.net> | 2015-10-02 23:21:59 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2015-10-02 23:21:59 +0200 |
commit | 8580d1f73db36e9383e674e388b4fb55828c0c66 (patch) | |
tree | 10bc3a9d7bd0f27a7df2b2d32558431ecbae6737 /src/journal/journald.c | |
parent | 0fb398316c6705dfc168733361650fdb6824896d (diff) |
journal: rework vacuuming logic
Implement a maximum limit on number of journal files to keep around.
Enforcing a limit is useful on this since our performance when viewing
pays a heavy penalty for each journal file to interleve. This setting is
turned on now by default, and set to 100.
Also, actully implement what 348ced909724a1331b85d57aede80a102a00e428
promised: use whatever we find on disk at startup as lower bound on how
much disk space we can use. That commit introduced some provisions to
implement this, but actually never did.
This also adds "journalctl --vacuum-files=" to vacuum files on disk by
their number explicitly.
Diffstat (limited to 'src/journal/journald.c')
-rw-r--r-- | src/journal/journald.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/journal/journald.c b/src/journal/journald.c index b2624c6d28..83236ceba9 100644 --- a/src/journal/journald.c +++ b/src/journal/journald.c @@ -21,8 +21,8 @@ #include <unistd.h> -#include "systemd/sd-messages.h" -#include "systemd/sd-daemon.h" +#include "sd-messages.h" +#include "sd-daemon.h" #include "journal-authenticate.h" #include "journald-server.h" @@ -54,7 +54,7 @@ int main(int argc, char *argv[]) { if (r < 0) goto finish; - server_vacuum(&server); + server_vacuum(&server, false, false); server_flush_to_var(&server); server_flush_dev_kmsg(&server); @@ -82,7 +82,7 @@ int main(int argc, char *argv[]) { if (server.oldest_file_usec + server.max_retention_usec < n) { log_info("Retention time reached."); server_rotate(&server); - server_vacuum(&server); + server_vacuum(&server, false, false); continue; } |