Package: uptimed
Version: 1:0.3.12-2
Severity: important

Apparently, uptimed is not updating its /var/spool/uptimed/records file
in a safe way: after a system crash, I have seen on many occasions fsck
clearing the corresponding inode and loosing all the uptime records.

The update procedure should be something like:

        rename /var/spool/uptimed/records as /var/spool/uptimed/records.old
        write new data to /var/spool/uptimed/records.new
        fsync()
        rename /var/spool/uptimed/records.new as /var/spool/uptimed/records
        unlink /var/spool/uptimed/records.old

And upon startup, if a /var/spool/uptimed/records.old file is present
it should be used as the main database because it means the above procedure
was somehow interrupted by a crash.

To minimise disruption, I've increased the frequency of database savings
to 600 seconds on my systems.  Note that my machines do not crash frequently
but when they do, it is usually because one of the IDE disks loses an interrupt
and linux then hangs, requiring a reboot (the software watchdog is of no help
here, hangup seems to be at the kernel level).

I'm flagging this bug as "important" because it is somehow defeating the
purpose of having a tool record uptimes if a sudden crash causes years of
history to get trashed. (Data is not valuable enough to go through a tape
restore).

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.25.4 (SMP w/2 CPU cores)
Locale: LANG=fr_FR, LC_CTYPE=fr_FR (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/bash

Versions of packages uptimed depends on:
ii  debconf [debconf-2.0]      1.5.22        Debian configuration management sy
ii  libc6                      2.7-2         GNU C Library: Shared libraries
ii  libuptimed0                1:0.3.11-1+b1 Library for uptimed

uptimed recommends no packages.

-- debconf information:
* uptimed/mail/do_mail: Both
* uptimed/mail/address: root
* uptimed/mail/milestones_info:
* uptimed/maxrecords: 50
* uptimed/interval: 600



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to