java/code/src/com/redhat/rhn/common/db/datasource/xml/Crash_queries.xml | 4 ++
java/code/src/com/redhat/rhn/frontend/dto/IdenticalCrashesDto.java | 17
++++++++++
java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml | 4 +-
java/code/src/com/redhat/rhn/frontend/xmlrpc/system/crash/CrashHandler.java | 6 +++
java/code/webapp/WEB-INF/pages/systems/softwarecrashesoverview.jsp | 6 +++
5 files changed, 35 insertions(+), 2 deletions(-)
New commits:
commit 41ec5c322dc06fbbf2c17af214ae8805967444a4
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Tue Mar 26 15:08:23 2013 +0100
abrt: display component in crash overview
diff --git a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Crash_queries.xml
b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Crash_queries.xml
index bfe34c2..663ac1c 100644
--- a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Crash_queries.xml
+++ b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Crash_queries.xml
@@ -3,6 +3,10 @@
<mode name="list_identical_crashes_for_org"
class="com.redhat.rhn.frontend.dto.IdenticalCrashesDto">
<query params="org_id, user_id">
select sc.uuid as uuid,
+ case when count(distinct sc.component) = 1
+ then min(sc.component)
+ else NULL
+ end as component,
count(distinct sc.server_id) as system_count,
sum(sc.count) as total_crash_count,
max(sc.modified) as last_crash_report
diff --git a/java/code/src/com/redhat/rhn/frontend/dto/IdenticalCrashesDto.java
b/java/code/src/com/redhat/rhn/frontend/dto/IdenticalCrashesDto.java
index 03baea3..823c414 100644
--- a/java/code/src/com/redhat/rhn/frontend/dto/IdenticalCrashesDto.java
+++ b/java/code/src/com/redhat/rhn/frontend/dto/IdenticalCrashesDto.java
@@ -25,6 +25,7 @@ public class IdenticalCrashesDto extends BaseDto {
private Long id;
private String uuid;
+ private String component;
private long totalCrashCount;
private long systemCount;
private Date lastCrashReport;
@@ -62,6 +63,22 @@ public class IdenticalCrashesDto extends BaseDto {
}
/**
+ * Returns the component.
+ * @return Returns the component.
+ */
+ public String getComponent() {
+ return component;
+ }
+
+ /**
+ * Sets the component.
+ * @param componentIn The id to set.
+ */
+ public void setComponent(String componentIn) {
+ component = componentIn;
+ }
+
+ /**
* Returns total number of crashes.
* @return total number of crashes.
*/
diff --git a/java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml
b/java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml
index 7fc3819..d43d0c3 100644
--- a/java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml
+++ b/java/code/src/com/redhat/rhn/frontend/strings/jsp/StringResource_en_US.xml
@@ -16402,9 +16402,9 @@ The Tree Path, Kickstart RPM, Base Channel, and Installer
Generation should alwa
</context-group>
</trans-unit>
<trans-unit id="crashes.jsp.totalcrashcount">
- <source>Total Crash Count</source>
+ <source>total crash count</source>
<context-group name="ctx">
- <context
context-type="sourcefile">/systems/SoftwareCrashesOverview.do</context>
+ <context
context-type="sourcefile">/systems/softwarecrashesoverview.do</context>
</context-group>
</trans-unit>
<trans-unit id="crashes.jsp.affectedsystemscount">
diff --git a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/crash/CrashHandler.java
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/crash/CrashHandler.java
index 28d70d5..d71fcd4 100644
--- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/crash/CrashHandler.java
+++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/crash/CrashHandler.java
@@ -413,6 +413,8 @@ public class CrashHandler extends BaseHandler {
* #array()
* #struct("crash")
* #prop_desc("string", "uuid", "Crash
UUID")
+ * #prop_desc("string", "component",
+ * "Package component (set if unique and non
empty)")
* #prop_desc("int", "crash_count", "Number of
crashes occurred")
* #prop_des("int", "system_count", "Number of
systems affected")
* #prop_desc("dateTime.iso8601", "last_report",
"Last crash occurence")
@@ -426,6 +428,10 @@ public class CrashHandler extends BaseHandler {
user.getOrg())) {
HashMap crashMap = new HashMap();
crashMap.put("uuid", ic.getUuid());
+ String component = ic.getComponent();
+ if (component != null) {
+ crashMap.put("component", component);
+ }
crashMap.put("crash_count", ic.getTotalCrashCount());
crashMap.put("system_count", ic.getSystemCount());
crashMap.put("last_report", ic.getLastCrashReport());
diff --git a/java/code/webapp/WEB-INF/pages/systems/softwarecrashesoverview.jsp
b/java/code/webapp/WEB-INF/pages/systems/softwarecrashesoverview.jsp
index 974d35b..a9747a8 100644
--- a/java/code/webapp/WEB-INF/pages/systems/softwarecrashesoverview.jsp
+++ b/java/code/webapp/WEB-INF/pages/systems/softwarecrashesoverview.jsp
@@ -37,6 +37,12 @@
${current.uuid}
</a>
</rl:column>
+ <rl:column headerkey="crashes.jsp.component"
+ bound="false"
+ sortattr="component"
+ sortable="true">
+ ${current.component}
+ </rl:column>
<rl:column headerkey="crashes.jsp.totalcrashcount"
bound="false"
sortattr="totalCrashCount"
Show replies by date