Bug 698406

Summary: Reported problems not marked with a green LED icon
Product: [Fedora] Fedora Reporter: Michael Schwendt <bugs.michael>
Component: abrtAssignee: Denys Vlasenko <dvlasenk>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 15CC: anton, dvlasenk, iprikryl, jmoskovc, kklic, mtoman, npajkovs, rvokal
Target Milestone: ---Keywords: EasyFix
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: abrt-2.0.3-1.fc15 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-06-24 03:24:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
example event_log
none
full spool dir for reported bug 698404 w/o coredump file
none
full spool dir for reported bug 699660 w/o coredump file
none
screenshot of ABRT (2011-05-03) none

Description Michael Schwendt 2011-04-20 20:12:46 UTC
Description of problem: In ABRT's main window, the red icon in the left column doesn't turn green for problems that have been reported already.

Mentioned this in the 2.0.0-5.fc15 bodhi ticket, and it is reproducible with 2.0.1-1.fc15. Just reported bug 698404, and even after restarting ABRT, the LED icon for the reported bug is still red.


Version-Release number of selected component (if applicable):
$ rpm -qa abrt\* libreport\*|sort
abrt-2.0.1-1.fc15.x86_64
abrt-addon-ccpp-2.0.1-1.fc15.x86_64
abrt-addon-kerneloops-2.0.1-1.fc15.x86_64
abrt-addon-python-2.0.1-1.fc15.x86_64
abrt-desktop-2.0.1-1.fc15.x86_64
abrt-gui-2.0.1-1.fc15.x86_64
abrt-libs-2.0.1-1.fc15.x86_64
abrt-plugin-bugzilla-2.0.1-1.fc15.x86_64
abrt-plugin-logger-2.0.1-1.fc15.x86_64
libreport-2.0.1-1.fc15.x86_64
libreport-gtk-2.0.1-1.fc15.x86_64

Comment 1 Denys Vlasenko 2011-04-28 10:55:10 UTC
Do you see file named "event_log" in the corresponding /var/spool/abrt/DIR? If yes, what does it contain?

Comment 2 Michael Schwendt 2011-04-28 12:06:17 UTC
Created attachment 495520 [details]
example event_log

Here's one example from
~/.abrt/spool/ccpp-2011-04-20-21:21:54-10173/event_log

Comment 3 Denys Vlasenko 2011-05-03 11:17:04 UTC
event_log looks normal. Do you have reported_to file in that directory? If yes, what does it contain?

Comment 4 Michael Schwendt 2011-05-03 12:05:21 UTC
Created attachment 496502 [details]
full spool dir for reported bug 698404 w/o coredump file

$ cat reported_to 
Bugzilla: URL=https://bugzilla.redhat.com/show_bug.cgi?id=698404

Comment 5 Michael Schwendt 2011-05-03 12:20:17 UTC
Comment on attachment 496502 [details]
full spool dir for reported bug 698404 w/o coredump file

Unfortunately, the old spool dir for the event_log attached earlier is no longer present.

The tar attached here is a different spool dir that refers to the same bug 698404. It was created when trying the test-update for that bug, which crashed again. It resulted in me adding bug 698404 comment 9 to the bug from within ABRT.

Since then, the LED for that issue is green.

So, I currently cannot provide any spool dir contents for the older issues.

Comment 6 Michael Schwendt 2011-05-03 12:24:11 UTC
Created attachment 496509 [details]
full spool dir for reported bug 699660 w/o coredump file

Here's another spool dir for bug 699660 which is still red.

Comment 7 Michael Schwendt 2011-05-03 12:26:11 UTC
Created attachment 496512 [details]
screenshot of ABRT (2011-05-03)

The seapplet issue in the screenshot is the reported bug 699660.

Comment 8 Denys Vlasenko 2011-05-12 17:25:23 UTC
Strange. In the archive you attached, event_log contains:

2011-04-26-11:53:34> Logging into Bugzilla at https://bugzilla.redhat.com
2011-04-26-11:53:36  Checking for duplicates
2011-04-26-11:53:38  Creating a new bug
2011-04-26-11:53:40  New bug id: 699660
2011-04-26-11:53:40  Adding attachments to bug 699660
2011-04-26-11:53:54  Logging out
2011-04-26-11:53:55  Status: NEW https://bugzilla.redhat.com/show_bug.cgi?id=699660

and corresponding code in 2.0.1 is:

    log(_("Logging out"));
    bz_server.logout();

    log("Status: %s%s%s %s/show_bug.cgi?id=%u",
                bz.bug_status,
                bz.bug_resolution ? " " : "",
                bz.bug_resolution ? bz.bug_resolution : "",
                bugzilla_url,
                (int)bug_id
    );

    dd = dd_opendir(dump_dir_name, /*flags:*/ 0);
    if (dd)
    {
        char *msg = xasprintf("Bugzilla: URL=%s/show_bug.cgi?id=%u", bugzilla_url, (int)bug_id);
        add_reported_to(dd, msg);
        free(msg);
        dd_close(dd);
    }

the last part which calls add_reported_to(), should create a file named "reported_to".

But I don't see it in your archive. This is strange.

You can help by debugging it as follows:

Run: abrt-gui -vvv 2>&1 | tee LOG
and report a bug to bugzilla.
Then look into resulting LOG file.
Find there lines which look like this:

Exporting 'Bugzilla_BugzillaURL=https://bugzilla.redhat.com'
Exporting 'Bugzilla_Login=XXXXXXXXXX'
Exporting 'Bugzilla_Password=XXXXXXXX'
Exporting 'Bugzilla_SSLVerify=no'
Executing 'abrt-action-bugzilla -c /etc/abrt/plugins/Bugzilla.conf'

Now, make and run the foolowing shell script:

export Bugzilla_BugzillaURL=https://bugzilla.redhat.com
Bugzilla_Login=XXXXXXXXXX
Bugzilla_Password=XXXXXXXX
Bugzilla_SSLVerify=no
strace -s99 -tt -f -oSTRACE_LOG abrt-action-bugzilla -c /etc/abrt/plugins/Bugzilla.conf


Attach STRACE_LOG to this bug. If it contains your bz password, you can cut out everything up from the start to the line where STRACE_LOG contains "Logging out" string.

STRACE_LOG will allow me to understand why this code seems to not work:

    dd = dd_opendir(dump_dir_name, /*flags:*/ 0);
    if (dd)
    {
        char *msg = xasprintf("Bugzilla: URL=%s/show_bug.cgi?id=%u", bugzilla_url, (int)bug_id);
        add_reported_to(dd, msg);
        free(msg);
        dd_close(dd);
    }

Comment 9 Denys Vlasenko 2011-05-12 17:26:31 UTC
(In reply to comment #8)
> Now, make and run the foolowing shell script:

Correction (forgot "export")

export Bugzilla_BugzillaURL=https://bugzilla.redhat.com
export Bugzilla_Login=XXXXXXXXXX
export Bugzilla_Password=XXXXXXXX
export Bugzilla_SSLVerify=no
strace -s99 -tt -f -oSTRACE_LOG abrt-action-bugzilla -c /etc/abrt/plugins/Bugzilla.conf

Comment 10 Michael Schwendt 2011-05-15 13:45:50 UTC
If you want me to do some debugging, please come up with something more sane.

[...]

Today I've reported bug 704841 and bug 704843 with ABRT, and in both cases it did not create the "reported_to" file. I've made a tgz of the spool dir just in case.

[...]

If I run the suggested shell script anywhere, I only get:

  '.' is not a dump directory

So, if I enter a spool dir below ~/.abrt/spool and run the script there, it captures so much data from strace, it here has reached 1 GiB and still hasn't stopped. I've cancelled it then. It also makes me wonder that if I've reported a bug with abrt-gui before and only run the script afterwards, wouldn't that falsify the output? As I mentioned in comment 5, when reproducing a bug and adding another comment to it within abrt-gui, one of the tickets received a green LED -- but mission objective is to find out why initial reporting fails to create the "reported_to" file.


I think I may need to visit the source, add some debugging myself, or see whether I can find something with gdb.

Comment 11 Michael Schwendt 2011-05-15 14:52:01 UTC
Reply to comment 8:

That part of the code is not executed at all. The "Create new bug" code in src/plugins/abrt-action-bugzilla.cpp lines 764 to 790 ends with its own

        log(_("Logging out"));
        bz_server.logout();

        log("Status: NEW %s/show_bug.cgi?id=%u",
                    bugzilla_url,
                    (int)bug_id
        );
        return;
    }

so the code further down at lines 883 to 907 isn't executed, and add_reported_to() is not called at all for a _new_ bug. If I report the same bug once more_, ABRT finds the existing ticket number in bugzilla and only then adds the "reported_to" file.

Comment 12 Michael Schwendt 2011-05-17 10:49:29 UTC
Due to the wrong "return" mentioned in the previous comment, the code is not missing just the add_report_to() stuff but also a

    free_problem_data(problem_data);

prior to returning there.

Comment 13 Denys Vlasenko 2011-05-17 15:03:40 UTC
Thanks! Excellent analysis!

Fixed in git, in this commit:

commit b1a334bc10c89579e5ebefe966333e2718b787c5
Author: Denys Vlasenko <dvlasenk>
Date:   Tue May 17 17:02:19 2011 +0200

    abrt-action-bugzilla: store "reported_to" for new bugs too.

Comment 14 Nikola Pajkovsky 2011-05-25 06:38:02 UTC
*** Bug 707380 has been marked as a duplicate of this bug. ***

Comment 15 Fedora Update System 2011-06-21 13:44:14 UTC
abrt-2.0.3-1.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/abrt-2.0.3-1.fc15

Comment 16 Fedora Update System 2011-06-21 23:55:12 UTC
Package abrt-2.0.3-1.fc15:
* should fix your issue,
* was pushed to the Fedora 15 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing abrt-2.0.3-1.fc15'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/abrt-2.0.3-1.fc15
then log in and leave karma (feedback).

Comment 17 Fedora Update System 2011-06-24 03:22:11 UTC
abrt-2.0.3-1.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.