Bug 805210 - Group: Operations portlet fails to load data if Oracle is used on the back-end due to 0 length rhq_config_property.string_value for OPERATION_STATUS being treated as NULL
Group: Operations portlet fails to load data if Oracle is used on the back-en...
Status: CLOSED CURRENTRELEASE
Product: JBoss Operations Network
Classification: JBoss
Component: UI (Show other bugs)
JON 3.0.0
All All
high Severity urgent
: ---
: JON 3.1.0
Assigned To: Jay Shaughnessy
Mike Foley
:
Depends On: 805212
Blocks:
  Show dependency treegraph
 
Reported: 2012-03-20 12:45 EDT by bkramer
Modified: 2013-09-11 06:58 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-09-11 06:58:01 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description bkramer 2012-03-20 12:45:42 EDT
Description of problem:

When navigating to the Group View summary page there is continuous "Loading data..." message on the Group Operations portlet.

When trying to get the portlet settings the following exceptions are thrown:

Message : Globally uncaught exception 
Severity : Error  

Time : Friday, March 16, 2012 1:53:55 PM Etc/GMT-1 
Detail : com.google.gwt.core.client.JavaScriptException:(TypeError): Für
die Eigenschaft "length" kann kein Wert abgerufen werden: Das Objekt ist
Null oder undefiniert
description: Für die Eigenschaft "length" kann kein Wert abgerufen
werden: Das Objekt ist Null oder undefiniert
number: -2146823281--- STACK TRACE FOLLOWS ---(TypeError): Für die
Eigenschaft "length" kann kein Wert abgerufen werden: Das Objekt ist
Null oder undefiniert
description: Für die Eigenschaft "length" kann kein Wert abgerufen
werden: Das Objekt ist Null oder undefiniert
number: -2146823281


Message : Failure in datasource while processing FETCH request. 
Severity : Error  

Time : Friday, March 16, 2012 1:55:40 PM Etc/GMT-1 
Detail : com.google.gwt.core.client.JavaScriptException:(TypeError): Für
die Eigenschaft "length" kann kein Wert abgerufen werden: Das Objekt ist
Null oder undefiniert
description: Für die Eigenschaft "length" kann kein Wert abgerufen
werden: Das Objekt ist Null oder undefiniert
number: -2146823281--- STACK TRACE FOLLOWS ---(TypeError): Für die
Eigenschaft "length" kann kein Wert abgerufen werden: Das Objekt ist
Null oder undefiniert
description: Für die Eigenschaft "length" kann kein Wert abgerufen
werden: Das Objekt ist Null oder undefiniert
number: -2146823281

The following SQL:

select c.* 
from   rhq_dashboard_portlet p inner join rhq_config_property c 
       on p.configuration_id = c.configuration_id inner join rhq_dashboard d 
       on p.dashboard_id = d.id inner join rhq_subject s on d.subject_id = s.id 
where  s.name = 'rhqadmin' and p.name = 'Group: Operations'


returns null for the OPERATION_STATUS property value.


Version-Release number of selected component (if applicable):
JON 3.0.GA

How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:
Comment 1 bkramer 2012-03-20 12:49:52 EDT
RHQ bugzilla for the same issue: 

https://bugzilla.redhat.com/show_bug.cgi?id=805212
Comment 2 Mike Foley 2012-03-26 11:55:31 EDT
per BZ triage ... make this a high.

JON had no locale requirements.

So these are not release blocking for JON.
Comment 3 Larry O'Leary 2012-03-26 12:17:18 EDT
Please note that the locale requirement mentioned in Comment 2 is assuming that this issue is actually due to locale support.
Comment 4 Jay Shaughnessy 2012-03-27 14:57:11 EDT
master commit 8ffe2a02a8a8fb6b12e78ea02b3c4ee588c82fd7

I couldn't reproduce the issue directly but I did find a few problems in
the portlet which I fixed here.  I think it's likely that the problem
will be solved by these fixes.  Primarily, it adds support in this portlet
and others to better handle having all of the enum filter values (in this
case the operation status enums) unset. Also, changes in config were not
being applied to the current instantiation of the portlet.

A workaround for existing, problematic portlets is to delete it and then add 
it back using "Edit Mode" and "Add Portlet".

Test Notes:
Make sure you try the global/group/resource level operation history portlets.
Alter various config and make sure it affects the current portlet and
is also stored properly (leave global dash or the detail view, and then
and come back and see if it is correct).

*** May need to be verified against a JON 3.1 build ***
Comment 5 Larry O'Leary 2012-04-10 22:46:57 EDT
This issue is a direct result of Oracle and its VARCHAR2 type treating null and empty string as one in the same and returning null in both cases. This was originally reported in Bug 536526.

The fix for this needs to be to handle the null values returned properly (i.e. we can not use empty string as a valid/meaningful value as it will be no different then null).
Comment 6 Larry O'Leary 2012-04-10 23:11:49 EDT
Updating the title to better reflect this issue:
   Group: Operations portlet fails to load data if Oracle is used on the back-end due to 0 length rhq_config_property.string_value for OPERATION_STATUS being treated as NULL
Comment 7 Larry O'Leary 2012-04-10 23:34:14 EDT
Just realized (and actually suspected) that this issue seems to affect other portlets on the group's Summary dashboard. Not sure if this affects portlets on the resource's Summary dashboard or on the system dashboard.
Comment 8 Charles Crouch 2012-04-16 10:12:04 EDT
Removing RHQ trackers. This will be fixed upstream by bug #805212
Comment 9 Jay Shaughnessy 2012-04-16 15:39:53 EDT
Fixed upstream.
Comment 10 Sunil Kondkar 2012-06-13 07:11:32 EDT
Verified on Version: 3.1.0.GA Build Number: b575169:a53e41e

Verified global/group/resource level operation history portlets and also other portlets. Changed portlet configurations and verified that it reflects the portlet and stored properly.
Verified on postgres and oracle.

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