Community
Participate
Working Groups
build I20040512-0800 - clicked the sync button in the sync view - it started a sync - pressed Run in Background - did the same again - in the progress view, it showed two sync jobs, but only one was active - terminated the other one - it did not get cleared from the list - it also showed "Synchronizing: (0%) null" - while the other job continued to make progress, the progress indicator at bottom right kept showing 0%.
We choose the job we show based on priority - the idea of active job is based on prioity and user action. A job the user initiated is always considered more significant than one done automatically in the background. Moving to Team to investigate 1) Starting the job at more than 0% to give the perception of progress 2) Making sure cancel is being checked enough as we will not update unless you cancel. If there is a refresh problem in the view after the cancellation then please move this back. I have logged Bug 62078 to get the sorting done better when a job is cancelled.
Note that both syncs were manually triggered.
Here is the behavior I am seeing: - We have two synchronize jobs in the synchronize view. Just to be confusing, we synchronized a block within the run method to avoid having multiple synchronize jobs working concurrently. We can't use scheduling rules because we don't know which scheduling rules may be obtained within the job. - The first job is running and the progress shows up in the progress view. The second job is running but is blocked until the first job completes so it is making no progress. However, the status bar is showing the progress from the blocked job and not the running job. The user initiated both jobs and they have the same priority. I will investigate changing how we serialize these jobs since there are other negative side effects. However, the problem of showing the status from the wrong job still remains. I'm moving this back to UI as I should think that the status area should show the progress for the job that is running. To reproduce this, you will need to create two synchronize entries. You can do this by synchronizeing your Workspace and pinning that entry and then Synchronizing a selection or working set and pinning that entry. Selecting either from the toolbar dropdown will then launch a synchronize.
What we should see is if we can resort if something is blocked. John is there any way for me to know when a job is blocked on another one?
Of course... you can use JobInfo.isBlocked() to find this out.
Added blocked state to the sort criteria in HEAD
Is there any notification of the change in blocked state so that the view can re-sort?
The refresh in the progress region when the next tick happens will update it - not sure about the JobsView but I think it may do the same.
Verified in 20040529