Bug 580899 - abrtd is dead. exits with unclear error message, invalid number ''
Summary: abrtd is dead. exits with unclear error message, invalid number ''
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: abrt
Version: 13
Hardware: All
OS: Linux
low
high
Target Milestone: ---
Assignee: Karel Klíč
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 586619 591008 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-04-09 12:06 UTC by Elad Alfassa
Modified: 2013-03-03 23:00 UTC (History)
14 users (show)

Fixed In Version: abrt-1.1.1-1.fc12
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-06-02 18:05:39 UTC


Attachments (Terms of Use)

Description Elad Alfassa 2010-04-09 12:06:33 UTC
I updated ABRT to abrt-1.0.9-1.fc13.x86_64, and from some reason abrt died.
when opening abrt GUI, there is a DBus error:

Error while loading the dumplist.
org.freedesktop.DBus.Error.NoReply: Message did not receive a reply (timeout by message bus)

system-config-services points that abrtd is dead.

I tried to figure out why abrtd is dead, so i typed abrtd -d. here is the output:
abrtd: Registered Reporter plugin 'KerneloopsReporter'
abrtd: Registered Analyzer plugin 'Python'
abrtd: Registered Analyzer plugin 'Kerneloops'
abrtd: Registered Reporter plugin 'Logger'
abrtd: warning: /proc/sys/kernel/core_pattern was already set to run a crash analyser (|/usr/libexec/abrt-hook-ccpp /var/cache/abrt %p %s %u %c), abrt may interfere with it
abrtd: Registered Analyzer plugin 'CCpp'
abrtd: Registered Reporter plugin 'Bugzilla'
abrtd: Registered Action plugin 'KerneloopsScanner'
abrtd: Checking for unsaved crashes (dirs to check:77)
abrtd: Registered Database plugin 'SQLite3'
abrtd: Getting local universal unique identification
abrtd: Crash is in database already (dup of /var/cache/abrt/kerneloops-1270812682-1)
abrtd: invalid number ''

Comment 1 Ignasius Denok 2010-04-25 10:14:41 UTC
I got same errors with elad for abrt-1.0.9-1.fc12.i686, and output message from abrtd -d:
==================================================================================
abrtd: Registered Action plugin 'KerneloopsScanner'
abrtd: Registered Analyzer plugin 'Kerneloops'
abrtd: Registered Reporter plugin 'Bugzilla'
abrtd: Registered Reporter plugin 'KerneloopsReporter'
abrtd: warning: /proc/sys/kernel/core_pattern was already set to run a crash analyser (|/usr/libexec/abrt-hook-ccpp /var/cache/abrt %p %s %u %c), abrt may interfere with it
abrtd: Registered Analyzer plugin 'CCpp'
abrtd: Registered Reporter plugin 'Logger'
abrtd: Registered Analyzer plugin 'Python'
abrtd: Checking for unsaved crashes (dirs to check:26)
abrtd: Registered Database plugin 'SQLite3'
abrtd: invalid number ''

Comment 2 Johannes Schmid 2010-05-01 10:27:08 UTC
Actually clearing the contents of /var/cache/abrt fixes this. Some debugging revealed that it is the result of an invalid stack trace in this directory.

I would propose to add the following to src/Daemon/MiddleWare.cpp line 923:

if (!UID.length())
{
	return MW_ERROR;
}

because in the next line xatou(UID.c_str()) is called which aborts if UID is empty (or no number).

Comment 3 Karel Klíč 2010-05-06 12:11:02 UTC
Johannes, thank you for your proposal.
I would check the UID even more -- simply return MW_ERROR when the number conversion fails.    

/* Convert UID string to number uid_num. The UID string can be modified by user or wrongly saved (empty or non-numeric), so xatou() cannot be used here,
because it would kill the daemon. */
    char *endptr;
    errno = 0;
    unsigned long uid_num = strtoul(UID.c_str(), &endptr, 10);
    if (errno || UID.c_str() == endptr || *endptr != '\0' || uid_num > UINT_MAX)
    {
        error_msg("Invalid UID '%s' loaded from %s", UID.c_str(), pDebugDumpDir);
        return MW_ERROR;
    }

    if (IsDebugDumpSaved(uid_num, pDebugDumpDir))
...

Comment 4 Karel Klíč 2010-05-06 12:28:01 UTC
Fixed in git. It will be a part of next update.

Comment 5 Johannes Schmid 2010-05-06 12:30:04 UTC
That's of course a lot cleaner :)

Comment 6 Karel Klíč 2010-05-11 08:12:33 UTC
*** Bug 591008 has been marked as a duplicate of this bug. ***

Comment 7 Fedora Update System 2010-05-28 10:57:06 UTC
abrt-1.1.1-1.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/abrt-1.1.1-1.fc13

Comment 8 Fedora Update System 2010-05-28 12:45:48 UTC
abrt-1.1.1-1.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/abrt-1.1.1-1.fc12

Comment 9 Fedora Update System 2010-05-28 18:05:21 UTC
abrt-1.1.1-1.fc13 has been pushed to the Fedora 13 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update abrt'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/abrt-1.1.1-1.fc13

Comment 10 Jiri Moskovcak 2010-05-31 12:53:44 UTC
*** Bug 586619 has been marked as a duplicate of this bug. ***

Comment 11 Fedora Update System 2010-05-31 18:15:58 UTC
abrt-1.1.1-1.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update abrt'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/abrt-1.1.1-1.fc12

Comment 12 Fedora Update System 2010-06-02 18:05:00 UTC
abrt-1.1.1-1.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2010-06-28 17:09:26 UTC
abrt-1.1.1-1.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.