Age | Commit message (Collapse) | Author | |
---|---|---|---|
2012-10-26 | journal: special case the trivial cache chain cache entry | Lennart Poettering | |
2012-10-26 | journal: introduce entry array chain cache | Lennart Poettering | |
When traversing entry array chains for a bisection or for retrieving an item by index we previously always started at the beginning of the chain. Since we tend to look at the same chains repeatedly, let's cache where we have been the last time, and maybe we can skip ahead with this the next time. This turns most bisections and index lookups from O(log(n)*log(n)) into O(log(n)). More importantly however, we seek around on disk much less, which is good to reduce buffer cache and seek times on rotational disks. | |||
2012-10-18 | journal: suggest rotation when fields are not indexed | Lennart Poettering | |
2012-10-18 | journal: add ability to list values a specified field can take in all ↵ | Lennart Poettering | |
entries of the journal The new 'unique' API allows listing all unique field values that a field specified by a field name can take in all entries of the journal. This allows answering queries such as "What units logged to the journal?", "What hosts have logged into the journal?", "Which boot IDs have logged into the journal?". Ultimately this allows implementation of tools similar to lastlog based on journal data. Note that listing these field values will not work for journal files created with older journald, as the field values are not indexed in older files. | |||
2012-10-16 | journal: implement time-based rotation/vacuuming | Lennart Poettering | |
This also enables time-based rotation (but not vacuuming) after 1month, so that not more one month of journal is lost at a time per vacuuming. | |||
2012-10-16 | journal: sort data items of entries by offset | Lennart Poettering | |
This should slightly optimize disk access patterns on rotating disks for simple readers. | |||
2012-09-24 | journal: set seal even for readonly journalfiles | Mirco Tischler | |
journalctl needs to know wether the file has been sealed to be able to do verification. | |||
2012-09-21 | journal: don't allow journal_file_open() to be called with ret being NULL | Lennart Poettering | |
2012-09-13 | man: fix a bunch of typos in docs | Thomas Hindoe Paaboel Andersen | |
https://bugs.freedesktop.org/show_bug.cgi?id=54501 | |||
2012-09-13 | journal: never assert directly on data read from the journal | Lennart Poettering | |
2012-09-13 | journald: don't reposition window if we don't have to | Lennart Poettering | |
2012-09-11 | journal: don't set seal flag if we don't have gcrypt built-in | Lennart Poettering | |
2012-09-11 | journal: don't try to compress without XZ | Michael Olbrich | |
otherwise the header contains the HEADER_INCOMPATIBLE_COMPRESSED flag even though the data is not compressed and reading the journal fails. | |||
2012-09-10 | journald: detect invalid header pointers correctly | Lennart Poettering | |
2012-09-07 | journal: add call to determine current journal file disk usage | Lennart Poettering | |
2012-09-06 | journald: avoid logging to kmsg in the normal paths | Lennart Poettering | |
2012-08-21 | journal: be more careful when keeping around mmaps we still need | Lennart Poettering | |
2012-08-20 | journal: make libgcrypt dependency optional | Lennart Poettering | |
2012-08-20 | journal: use a macro to check for file header flags | Lennart Poettering | |
2012-08-20 | journal: fix tag ordering check | Lennart Poettering | |
2012-08-18 | mmap: resize arrays dynamically | Lennart Poettering | |
2012-08-18 | journal: even more simple static object tests | Lennart Poettering | |
2012-08-18 | journal: fix verification without key | Lennart Poettering | |
2012-08-18 | journald: add additional simple static tests to verifier | Lennart Poettering | |
2012-08-17 | journal: be fine with opening rotated/corrupted journal files | Lennart Poettering | |
2012-08-17 | journal: show new header fields in header dump | Lennart Poettering | |
2012-08-17 | journal: rework terminology | Lennart Poettering | |
Let's clean up our terminology a bit. New terminology: FSS = Forward Secure Sealing FSPRG = Forward Secure Pseudo-Random Generator FSS is the combination of FSPRG and a HMAC. Sealing = process of adding authentication tags to the journal. Verification = process of checking authentication tags to the journal. Sealing Key = The key used for adding authentication tags to the journal. Verification Key = The key used for checking authentication tags of the journal. Key pair = The pair of Sealing Key and Verification Key Internally, the Sealing Key is the combination of the FSPRG State plus change interval/start time. Internally, the Verification Key is the combination of the FSPRG Seed plus change interval/start time. | |||
2012-08-16 | journal: add FSPRG journal authentication | Lennart Poettering | |
2012-08-16 | journal: parse fsprg seed | Lennart Poettering | |
2012-08-16 | journal: count number of entry arrays in header | Lennart Poettering | |
2012-08-16 | journal: rename 'mmap' to 'mmap_cache' to appease gcc | Zbigniew Jędrzejewski-Szmek | |
warning: declaration of 'mmap' shadows a global declaration [-Wshadow] | |||
2012-08-16 | journal: verify hashes only during actual verification, not all the time | Lennart Poettering | |
2012-08-16 | journal: split up journal-file.c | Lennart Poettering | |
2012-08-16 | journal: add superficial structure verifier | Lennart Poettering | |
2012-08-16 | journal: implement basic journal file verification logic | Lennart Poettering | |
2012-08-16 | journal: implement generic sharable mmap caching logic | Lennart Poettering | |
instead of having one simple per-file cache implement an more comprehensive one that works for multiple files and can actually maintain multiple maps per file and per object type. | |||
2012-08-13 | journal: include tag object header in hmac | Lennart Poettering | |
2012-08-13 | journal: add all objects we add to HMAC | Lennart Poettering | |
2012-08-13 | journald: initial version of FSPRG hookup | Lennart Poettering | |
This adds forward-secure authentication of journal files. This patch includes key generation as well as tagging of journal files, Verification of journal files will be added in a later patch. | |||
2012-08-08 | fix a couple of issues found with llvm-analyze | Lennart Poettering | |
2012-07-19 | journal: rotate busy files away when we try to write to them | Lennart Poettering | |
2012-07-18 | journal: when we suggest a rotation, explain why | Lennart Poettering | |
2012-07-18 | journal: estimate data hash table size a bit larger by default | Lennart Poettering | |
2012-07-17 | journal: actually set archived files to archived state | Lennart Poettering | |
2012-07-17 | journalctl: decode more header files in --header | Lennart Poettering | |
2012-07-17 | journal: size journal data hash table based on maximum file size metrics | Lennart Poettering | |
The default of 2047 hash table entries turned out to result in way too many collisions for bigger files, hence scale the hash table size by the estimated maximum file size. | |||
2012-07-17 | journal: immediately rotate when the journal was previously not closed properly | Lennart Poettering | |
2012-07-17 | journal: automatically rotate journal files if the data hash table is full > 75% | Lennart Poettering | |
Previously, when the main data hash table grows too full the performance simply started to decrease drastically. Instead, now simply rotate to a new journal file as the hash table gets to full, so that we can start with a new fresh empty hash table. | |||
2012-07-16 | journal: use tail/head timestamps from header for cutoff logic | Lennart Poettering | |
We have them, they are faster to use them, so use them... | |||
2012-07-16 | journald: don't enforce monotonicity of realtime clocks when copying entries | Lennart Poettering | |
After all the point of the realtime clock (in contrast to the monotonic clock) is that it does not have to be strictly monotonic, hence don't enforce this when flushing the journal from /run to /var. |