Bug 760139 - Global Exception in Dashboard
Summary: Global Exception in Dashboard
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: RHQ Project
Classification: Other
Component: Core UI
Version: 4.3
Hardware: Unspecified
OS: Unspecified
high
medium
Target Milestone: ---
: ---
Assignee: Simeon Pinder
QA Contact: Mike Foley
URL:
Whiteboard:
Depends On:
Blocks: rhq41-ui jon30-sprint10, rhq43-sprint10
TreeView+ depends on / blocked
 
Reported: 2011-12-05 14:08 UTC by Heiko W. Rupp
Modified: 2012-02-07 19:17 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-02-07 19:17:42 UTC
Embargoed:


Attachments (Terms of Use)

Description Heiko W. Rupp 2011-12-05 14:08:00 UTC
Was refreshing dashboard content while an import of a new (jbossas4 server on RHEL) was taking place.
Platform utulization portlet was shown and I think the redraw did not happen for the rhel platform in question (hight cpu/memory usage at that time).
I suspect that as the platform utilization are live graphs, that the high load led to a delay, which led to a timeout and no data / null was returned which then caused the exception. 

Message itself was harmless, as the UI continued to work as usual.


com.google.gwt.core.client.JavaScriptException:(TypeError): result is null
 stack: org_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_$onSuccess__Lorg_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_2Ljava_util_Set_2V([object Object],null)@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:99783
org_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_onSuccess__Ljava_lang_Object_2V(null)@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:99811
com_google_gwt_user_client_rpc_impl_RequestCallbackAdapter_$onResponseReceived__Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter_2Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V([object Object],[object Object])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:9349
org_rhq_enterprise_gui_coregui_client_util_rpc_TrackingRequestCallback_onResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V([object Object],[object Object])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:168770
com_google_gwt_http_client_Request_$fireOnResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_RequestCallback_2V([object Object],[object Object])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:4376
com_google_gwt_http_client_RequestBuilder$1_onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V([object XMLHttpRequest])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:4600
([object Event])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:12659
com_google_gwt_core_client_impl_Impl_entry0__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2((function () {handler.onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V(_this);}),[object XMLHttpRequest],[object Object])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:2474
([object Event])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:2463

 fileName: http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html
 lineNumber: 99783
--- STACK TRACE FOLLOWS ---
(TypeError): result is null
 stack: org_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_$onSuccess__Lorg_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_2Ljava_util_Set_2V([object Object],null)@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:99783
org_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_onSuccess__Ljava_lang_Object_2V(null)@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:99811
com_google_gwt_user_client_rpc_impl_RequestCallbackAdapter_$onResponseReceived__Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter_2Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V([object Object],[object Object])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:9349
org_rhq_enterprise_gui_coregui_client_util_rpc_TrackingRequestCallback_onResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V([object Object],[object Object])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:168770
com_google_gwt_http_client_Request_$fireOnResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_RequestCallback_2V([object Object],[object Object])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:4376
com_google_gwt_http_client_RequestBuilder$1_onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V([object XMLHttpRequest])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:4600
([object Event])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:12659
com_google_gwt_core_client_impl_Impl_entry0__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2((function () {handler.onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V(_this);}),[object XMLHttpRequest],[object Object])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:2474
([object Event])@http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html:2463

 fileName: http://snert:7080/coregui/org.rhq.enterprise.gui.coregui.CoreGUI/CE2276AC5BAC83316A1FFD8E5A1EDAB3.cache.html
 lineNumber: 99783
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_$onSuccess__Lorg_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_2Ljava_util_Set_2V(Unknown source:0)
   at Unknown.org_rhq_enterprise_gui_coregui_client_dashboard_portlets_platform_PlatformSummaryPortlet$3_onSuccess__Ljava_lang_Object_2V(Unknown source:0)
   at Unknown.com_google_gwt_user_client_rpc_impl_RequestCallbackAdapter_$onResponseReceived__Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter_2Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V(Unknown source:0)
   at Unknown.org_rhq_enterprise_gui_coregui_client_util_rpc_TrackingRequestCallback_onResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_Response_2V(Unknown source:0)
   at Unknown.com_google_gwt_http_client_Request_$fireOnResponseReceived__Lcom_google_gwt_http_client_Request_2Lcom_google_gwt_http_client_RequestCallback_2V(Unknown source:0)
   at Unknown.com_google_gwt_http_client_RequestBuilder$1_onReadyStateChange__Lcom_google_gwt_xhr_client_XMLHttpRequest_2V(Unknown source:0)
   at Unknown.anonymous(Unknown source:0)
   at Unknown.com_google_gwt_core_client_impl_Impl_entry0__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(Unknown source:0)
   at Unknown.anonymous(Unknown source:0)
   at Unknown.anonymous(Unknown source:0)

Comment 1 Simeon Pinder 2011-12-14 21:58:36 UTC
As indicated this is not an error that occurs frequently. A series of runtime events have to occur when reading the live measurement data for null data to be returned.  Once null data is returned the UI serialization throws the exception and error in the Messages list.    

This is fixed with commit 3300dff0ec8 to master.  Just made sure that the returned data set is never null but empty sets returned instead.  The server side errors are still logged for valid runtime failures but in those conditions the UI will no longer throw an ugly message when the data is simply not available. 

Moving this to ON_QA.

Comment 2 Simeon Pinder 2011-12-16 14:16:34 UTC
Added one more commit 8937a7db8b7 for this fix to ensure that MeasurementManager never returns null even for erroneous conditions. This is a more complete fix and safer pattern for methods that return collections.

Comment 3 Mike Foley 2012-02-07 19:17:42 UTC
changing status of VERIFIED BZs for JON 2.4.2 and JON 3.0 to CLOSED/CURRENTRELEASE


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