diff options
author | Lennart Poettering <lennart@poettering.net> | 2012-07-16 19:28:05 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2012-07-16 19:28:05 +0200 |
commit | 162566a4a12c35e1e86e35ced1748354f7ec935e (patch) | |
tree | 56f08918939ffaa2395d5b777c7409de998f6493 | |
parent | 74d29da52409ab149738ea76824679d29598e0ac (diff) |
journal: use tail/head timestamps from header for cutoff logic
We have them, they are faster to use them, so use them...
-rw-r--r-- | src/journal/journal-file.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c index cd5ab266f0..a110a0090f 100644 --- a/src/journal/journal-file.c +++ b/src/journal/journal-file.c @@ -2446,26 +2446,21 @@ void journal_default_metrics(JournalMetrics *m, int fd) { } int journal_file_get_cutoff_realtime_usec(JournalFile *f, usec_t *from, usec_t *to) { - Object *o; - int r; - assert(f); assert(from || to); if (from) { - r = journal_file_next_entry(f, NULL, 0, DIRECTION_DOWN, &o, NULL); - if (r <= 0) - return r; + if (f->header->head_entry_realtime == 0) + return -ENOENT; - *from = le64toh(o->entry.realtime); + *from = le64toh(f->header->head_entry_realtime); } if (to) { - r = journal_file_next_entry(f, NULL, 0, DIRECTION_UP, &o, NULL); - if (r <= 0) - return r; + if (f->header->tail_entry_realtime == 0) + return -ENOENT; - *to = le64toh(o->entry.realtime); + *to = le64toh(f->header->tail_entry_realtime); } return 1; |