When I am press Remove after selecting a queue which already got deleted, just Cumin did not notice it yet, I run into infinite loop of empty dialog with header Remove and buttons Cancel and Submit. Pressing any of the buttons refreshes the page and the same dialog is shown again. cumin-0.1.4410-2.el5 How reproducible: 100% Steps to Reproduce: 1. First create a test queue, go to Messaging -> Queues -> Add queue 2. When the new queue appears in the list, select its check box. 3. Press the Remove button and submit the dialog 4. The page gets refreshed but the queue which is going to be deleted is still in the list, and selected. Repeat step #3 until you get the empty endless dialog. Actual results: Page http://localhost:45672/form.html? is shown and there is no way to get rid of the dialog other than changing the URL by hand. Expected results: The dialog is not shown for queue which is going to be deleted. Additional info: You can see following error while repeating step three: Remove: Failed (ExecutionException(error_code=404, command_id=serial(68), class_code=8, command_code=2, field_index=0, description=u'not-found: Queue not found: ahoj (qpid/broker/SessionAdapter.cpp:754)', error_info={}, channel=1, id=serial(360))) But when the above message appears, the dialog is still not in the endless loop. You have to press Remove again (e.g. I did it four times) or you can wait few seconds after first Remove while the queue is still listed.
Also note, if nothing is selected and remove is pressed, the remove dialog box comes up without a selection. That probably is wrong as well.
Revision 4784. Fixed infinite loop, problem was an uncaught exception on an object that had been deleted after it had been selected. Additionally, fixed the buttons here (and for Job hold, release, remove) so that press on an empty selection goes straight to the cancel state and completes the task process. Effect is a momentary "Loading" state but no form. As for the error message that appears if multiple deletions are made on the same queue before they can be processed, that may be a harder problem. Do we want to try to suppress that, or are we okay with the message? (personally, I am okay with it)
+1 for being ok with the error message
As for me, the error message was not the point of this BZ, so +1
See about invalidating buttons for selections when the selection list is 0. That is, if nothing is checked, don't allow the button press.
Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: Cause Asynchronous operations lead to a situation where an object which is in the process of being deleted is still selectable in Cumin. Futher operations on the object result in internal errors. This is okay, but Cumin does not handle the errors. Consequence Unhandled exceptions cause unpredictable behavior, such as a web form stuck in an infinite loop. Fix Add error handling around forms that operate on selected objects which may have been deleted. Result Errors from operations on deleted objects are handled gracefully by Cumin. Users are informed as appropriate to the operation.
Verified in cumin-0.1.4878-1.el5
Technical note updated. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1,11 +1 @@ -Cause +An object that was in the process of being deleted could have still been selecetd in Cumin, and any further operations on such an object resulted in internal errors. In turn, these unhandled exceptions could have caused unpredictable behavior, such as a web form stuck in an infinite loop. This update adds appropriate error-handling around forms which operate on selected objects, with the result that operations on deleted objects are now handled gracefully by Cumin, which informs users in the event of an error.- Asynchronous operations lead to a situation where an object which is in the process of being deleted is still selectable in Cumin. Futher operations on the object result in internal errors. This is okay, but Cumin does not handle the errors. - -Consequence - Unhandled exceptions cause unpredictable behavior, such as a web form stuck in an infinite loop. - -Fix - Add error handling around forms that operate on selected objects which may have been deleted. - -Result - Errors from operations on deleted objects are handled gracefully by Cumin. Users are informed as appropriate to the operation.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2011-1249.html