summaryrefslogtreecommitdiff
path: root/src/journal/journald-stream.c
diff options
context:
space:
mode:
authorJan Janssen <medhefgo@web.de>2013-06-28 17:26:30 +0200
committerLennart Poettering <lennart@poettering.net>2013-07-16 17:38:12 +0200
commita331b5e6d4724365bad9edeb9420c7e26e7f50da (patch)
treed2bbe6684dbbf91e3ac89a552b0b4c211aa5bbe4 /src/journal/journald-stream.c
parent18d4e7c26e7806ac363d19989df7144d5058ce41 (diff)
journalctl: Add support for showing messages from a previous boot
Hi, I redid the boot ID look up to use enumerate_unique. This is quite fast if the cache is warm but painfully slow if it isn't. It has a slight chance of returning the wrong order if realtime clock jumps around. This one has to do n searches for every boot ID there is plus a sort, so it depends heavily on cache hotness. This is in contrast to the other way of look-up through filtering by a MESSAGE_ID, which only needs about 1 seek + whatever amount of relative IDs you want to walk. I also have a linked-list + (in-place) mergesort version of this patch, which has pretty much the same runtime. But since this one is using libc sorting and armortized allocation, I prefer this one. To summarize: The MESSAGE_ID way is a *lot* faster but can be incomplete due to rotation, while the enumerate+sort will find every boot ID out there but will be painfully slow for large journals and cold caches. You choose :P Jan
Diffstat (limited to 'src/journal/journald-stream.c')
0 files changed, 0 insertions, 0 deletions