Bug 824778

Summary: Schedules cannot be deleted
Product: [Other] RHQ Project Reporter: vlad crc <vlad.craciunoiu>
Component: Core ServerAssignee: Lukas Krejci <lkrejci>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: low Docs Contact:
Priority: urgent    
Version: 4.4CC: hrupp, jshaughn, lkrejci
Target Milestone: ---   
Target Release: RHQ 4.5.0   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 825173 (view as bug list) Environment:
Last Closed: 2013-09-01 09:59:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 782579, 825173    
Attachments:
Description Flags
evidence of reproducibility none

Description vlad crc 2012-05-24 09:02:07 UTC
Description of problem:
A schedule created in RHQ Resource/Operations/Schedules once created cannot be deleted.

Version-Release number of selected component (if applicable):
4.4

How reproducible:
Always

Steps to Reproduce:
1. In the resource browser select a JBoss server (or anything else, a queue etc).
2. Go to Operations/Schedules/New and create a schedule.
3. Then try to delete it
  
Actual results:
The message in Message center is: "Failure in datasource while processing REMOVE request.". Stack trace from Message Center added below to additional info.

Expected results:
The schedule should be successfully deleted.

Additional info:


Detail :	

java.lang.ClassCastException:null
--- STACK TRACE FOLLOWS ---
null
   at Unknown.java_lang_ClassCastException_ClassCastException__V(Unknown Source)
   at Unknown.com_google_gwt_lang_Cast_dynamicCast__Ljava_lang_Object_2ILjava_lang_Object_2(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_inventory_common_detail_operation_schedule_AbstractOperationScheduleDataSource_$copyValues__Lorg_rhq_enterprise_gui_coregui_client_inventory_common_detail_operation_schedule_AbstractOperationScheduleDataSource_2Lcom_smartgwt_client_data_Record_2Lorg_rhq_core_domain_operation_bean_OperationSchedule_2(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_inventory_resource_detail_operation_schedule_ResourceOperationScheduleDataSource_executeRemove__Lcom_smartgwt_client_data_Record_2Lcom_smartgwt_client_data_DSRequest_2Lcom_smartgwt_client_data_DSResponse_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_util_RPCDataSource_transformRequest__Lcom_smartgwt_client_data_DSRequest_2Ljava_lang_Object_2(Unknown Source)
   at Unknown.anonymous(Unknown Source)
   at Unknown.com_google_gwt_core_client_impl_Impl_apply__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(Unknown Source)
   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)
   at Unknown.anonymous(Unknown Source)
   at Unknown.isc_DataSource_getServiceInputs(Unknown Source)
   at Unknown.isc_DataSource_sendDSRequest(Unknown Source)
   at Unknown.isc_DataSource_performDSOperation(Unknown Source)
   at Unknown.isc_Canvas_deleteRecords(Unknown Source)
   at Unknown.isc_Canvas_removeSelectedData(Unknown Source)
   at Unknown.com_smartgwt_client_widgets_grid_ListGrid_$removeSelectedData__Lcom_smartgwt_client_widgets_grid_ListGrid_2Lcom_smartgwt_client_data_DSCallback_2Lcom_smartgwt_client_data_DSRequest_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_components_table_Table_$deleteSelectedRecords__Lorg_rhq_enterprise_gui_coregui_client_components_table_Table_2Lcom_smartgwt_client_data_DSRequest_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_inventory_common_detail_operation_schedule_AbstractOperationScheduleListView$2_executeAction___3Lcom_smartgwt_client_widgets_grid_ListGridRecord_2Ljava_lang_Object_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_components_table_Table$2$1_execute__Ljava_lang_Boolean_2V(Unknown Source)
   at Unknown.anonymous(Unknown Source)
   at Unknown.isc_c_Class_fireCallback(Unknown Source)
   at Unknown.isc_Class_fireCallback(Unknown Source)
   at Unknown.isc_c_Class_fireCallback(Unknown Source)
   at Unknown.isc_c_Timer__fireTimeout(Unknown Source)
   at Unknown.anonymous(Unknown Source)
   at Unknown.anonymous(Unknown Source)

Comment 1 Charles Crouch 2012-05-24 17:25:55 UTC
This could be related to bug 787239

Comment 3 Mike Foley 2012-05-24 17:40:59 UTC
reproduced JON 3.1 ER4.  screenshot attached to document the repro.

Comment 4 Mike Foley 2012-05-24 17:41:32 UTC
Created attachment 586676 [details]
evidence of reproducibility

Comment 5 Mike Foley 2012-05-24 17:42:35 UTC
error in message center ...

Failure in datasource while processing REMOVE request.
Severity :	
Error
	
Time :	
Thursday, May 24, 2012 1:39:50 PM UTC-4
Detail :	

java.lang.ClassCastException:null
--- STACK TRACE FOLLOWS ---
null
   at Unknown.java_lang_ClassCastException_ClassCastException__V(Unknown Source)
   at Unknown.com_google_gwt_lang_Cast_dynamicCast__Ljava_lang_Object_2ILjava_lang_Object_2(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_inventory_common_detail_operation_schedule_AbstractOperationScheduleDataSource_$copyValues__Lorg_rhq_enterprise_gui_coregui_client_inventory_common_detail_operation_schedule_AbstractOperationScheduleDataSource_2Lcom_smartgwt_client_data_Record_2Lorg_rhq_core_domain_operation_bean_OperationSchedule_2(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_inventory_resource_detail_operation_schedule_ResourceOperationScheduleDataSource_executeRemove__Lcom_smartgwt_client_data_Record_2Lcom_smartgwt_client_data_DSRequest_2Lcom_smartgwt_client_data_DSResponse_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_util_RPCDataSource_transformRequest__Lcom_smartgwt_client_data_DSRequest_2Ljava_lang_Object_2(Unknown Source)
   at Unknown.anonymous(Unknown Source)
   at Unknown.com_google_gwt_core_client_impl_Impl_apply__Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2Ljava_lang_Object_2(Unknown Source)
   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)
   at Unknown.anonymous(Unknown Source)
   at Unknown.isc_DataSource_getServiceInputs(Unknown Source)
   at Unknown.isc_DataSource_sendDSRequest(Unknown Source)
   at Unknown.isc_DataSource_performDSOperation(Unknown Source)
   at Unknown.isc_Canvas_deleteRecords(Unknown Source)
   at Unknown.isc_Canvas_removeSelectedData(Unknown Source)
   at Unknown.com_smartgwt_client_widgets_grid_ListGrid_$removeSelectedData__Lcom_smartgwt_client_widgets_grid_ListGrid_2Lcom_smartgwt_client_data_DSCallback_2Lcom_smartgwt_client_data_DSRequest_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_components_table_Table_$deleteSelectedRecords__Lorg_rhq_enterprise_gui_coregui_client_components_table_Table_2Lcom_smartgwt_client_data_DSRequest_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_inventory_common_detail_operation_schedule_AbstractOperationScheduleListView$2_executeAction___3Lcom_smartgwt_client_widgets_grid_ListGridRecord_2Ljava_lang_Object_2V(Unknown Source)
   at Unknown.org_rhq_enterprise_gui_coregui_client_components_table_Table$2$1_execute__Ljava_lang_Boolean_2V(Unknown Source)
   at Unknown.anonymous(Unknown Source)
   at Unknown.isc_c_Class_fireCallback(Unknown Source)
   at Unknown.isc_Class_fireCallback(Unknown Source)
   at Unknown.isc_c_Class_fireCallback(Unknown Source)
   at Unknown.isc_c_Timer__fireTimeout(Unknown Source)
   at Unknown.anonymous(Unknown Source)
   at Unknown.anonymous(Unknown Source)

Comment 6 Lukas Krejci 2012-05-25 14:42:05 UTC
This is UI specific bug.

The backend seems to work correctly and removal of a schedule works through CLI as:

var schedules = OperationManager.findScheduledResourceOperations(<RESOURCE_ID);
var schedule = schedules.get(0); //or just select the one you need
OperationManager.unscheduleResourceOperation(schedule.jobId, <RESOURCE_ID>);

Comment 7 Charles Crouch 2012-05-25 17:00:20 UTC
This still requires triage BEFORE anything hits the release branch

Comment 8 Jay Shaughnessy 2012-05-25 17:29:10 UTC
master commit 9cb619f40a3cc7609989e9890a1da1f2c8b95273

This was odd. (nod to lkrejci for doing original analysis)
SmartGWT for whatever reason seemed to be getting confused
as to what sort of object that SubjectRecord was. It seems to stem from
setting a ListGrid "object" as an attribute on a ListGridRecord. Perhaps
under the covers it is sometimes a Java object and sometimes a javascript
object. Either way, remove the use of it completely and just use simple
attributes to store the subject name and id.  It adds an attribute but
overall simplfies things (and, as a bonus, works).

Test Notes:
Ensure add and remove are working, as well as the list view "owner" column.

Comment 9 Heiko W. Rupp 2013-09-01 09:59:29 UTC
Bulk closing of items that are on_qa and in old RHQ releases, which are out for a long time and where the issue has not been re-opened since.