Description of problem: Nowadays I can clearly see in Events (below the main RHEVM screen) the task/event is completed, however user can't operate with affected entities accordingly. Example: Put host to maintenance & try to edit its DC/cluster. You'll see the action is finished & you click Edit button, however you can't change cluster not even refresh of gui (as Edit Host window is not refreshed). You'll need to close Edit window & open it again. This is same with any other entities (VMs/Pools....) It's inconvenient to wait 5+s after each operation Version-Release number of selected component (if applicable): siXYZ How reproducible: 100% Steps to Reproduce: 1. try any task 2. 3. Actual results: Delay between information & real possibility of change. Expected results: Synchronized refresh for these operations. Additional info:
I noticed the same issue when working with VM snapshots (e.g. seeing that the commit was finished but the VM is not able to start for another 5 seconds) and it's really annoying - therefore I propose to to fix it in 3.1.
Setting placeholder for 3.2 and (potential) .z
From code perspective, the refresh logic in 3.1 (GWT technology) is the same as in 3.0 (WPF technology). This is because common UI logic (also known as "uicommon") was re-used in 3.1 by converting C# code into Java. By design, different parts of GUI are refreshed independently from other parts. This results in multiple HTTP requests against the backend, as each GUI component tries to fetch its "own" data. If one GUI component has refresh rate X and another component has refresh rate Y, when X != Y, GUI as a whole is generally "not in sync" with regard to current data. In 3.0 (WPF technology), communication between GUI and backend was synchronous. In 3.1 (GWT technology), communication between GUI and backend is asynchronous. This fact makes the refresh logic problem more visible. Short-term solution: at certain moments (e.g. closing a dialog with OK button, clicking action button in a data grid), enforce all GUI components to refresh their data immediately. This way the GUI will be "in sync" with regard to current data at certain key moments during the runtime. Long-term solution: re-write refresh logic, potentially optimizing the number of HTTP requests against the backend.
ovirt 3.4.0 alpha has been released
Closing as part of 3.4.0