Friday, May 31, 2013

The systemd journal is a broken piece of crap.

Why, you ask? Well, it is a write-only database, which means there is no tool to actually read or fix a journal files, should they become corrupt. Or even notice the corruption. And they become corrupt all the time.

So I don't care for the theoretical benefit of binary blob logs, as long as they don't work at all. It's as easy as that.

See https://bugzilla.novell.com/817778 for all the gory details.

To add insult to the injury, they are also written in a way that tends to fragment the logfiles very badly and thus the performance reading them (for the unlikely case that they are readable) is abysmal. Maybe it is usable with the latest and greatest SSD but with plain old rotating rust harddrives, it's a PITA.

7 comments:

  1. Frederic Crozat31 May, 2013 13:44

    You really know how to motivate people to fix bugs..

    ReplyDelete
  2. Frederic, I know you are not to blame, as you probably mostly have to live with what comes down from upstream.

    But since upstream was very good in persuading people across most distributions (the users are not that confident) to believe in their theories about what they think is the truth ("journal good" being one of those theories), someone must tell the world that those theories are not entirely correct.

    And in the state it is right now -- unable to read the journal logs, unable to skip the users logs (this would actually have avoides the issues I'm seeing), slow as a snail on non-ssd media -- I thill think the title of the post is not an unjust assessment.

    ReplyDelete
  3. Wow,

    You've indicted systemd and in the bug ticket it appears to be an isolated bug in the log parsing routine:

    Frederic Crozat 2013-05-31 13:06:51 UTC
    systemd / journalctl from 12.3 are able to correctly parse the journal files.

    It is a regression in journalctl (there is nothing wrong in the journal
    themselves), caused by a bugfix from
    https://bugs.freedesktop.org/show_bug.cgi?id=63672

    I'm discussing with upstream how to fix it.

    Maybe you should update your story accordingly so as to not appear excitable?

    --Dietrich

    ReplyDelete
  4. Well, journald and journalctl are parts of systemd (in fact, when using systemd one cannot opt-out of the journal), so I don't think anything is wrong with my assessment.

    ReplyDelete
  5. Why shouldn't he be excitable? It's not like this is the first problem with systemd. Systemd is probably the number one "bang your head against the wall" technology of the last few years, and it replaced something that does not need replacing.

    ReplyDelete
  6. Systemd is probably the number one “bang your head against the wall” technology of the last few years, and it replaced something that does not need replacing.

    Anything new that replaces something that worked OK with something that causes division and problems (systemd has already caused one distro to close down) is, by definition, bad design.
    If Linux tolerates this, in 5 years time it will be a fractured mess.
    And I only see one company benefiting from that outcome.

    Personally, and this is a personal feeling not an accusation - I wouldn't be surprised if we find out, long after the knowledge is of any use, that a certain well known software company was behind many of these new ideas - all the better to fracture the community with.

    ReplyDelete
  7. Cristian Rodriguez18 June, 2013 11:54

    I just fixed your bug, now you need to find something else to bitch and flame about ;P

    ReplyDelete