Bug 56491 [Tasks] DeleteCompletedTasks requires Markers to be refreshed
3.0 M8 If you create a new user defined task and mark it completed by clicking on the first column or by using the context menu, the delete completed task actino does not pick up the completed task. However it does work after the markers have been refreshed (eg project rebuild). to test: 1. create a user defined marker, ensuring it is not created as completed 2. click on the first column to mark it as complete 3. select delete completed tasks from the context menu, notice it doesn't pick up the task 4. perform a project re-build (Project|clean...) 5. repeat step 3, it now picks up the marker as complete It looks like the underlying IMarker is being updated, but the concrete TaskMarker is not. The action is looking at the concrete markers.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/views/markers/internal/ConcreteMarker.java
/*******************************************************************************
 * Copyright (c) 2000, 2003 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials 
 * are made available under the terms of the Common Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/cpl-v10.html
 * 
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.eclipse.ui.views.markers.internal;
import org.eclipse.core.resources.IMarker;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
/**
 * This is a concrete class that stores the same type of information as the IMarkers
 * used by the IDE. This class exists as an optimization. The various get* methods
 * on IMarker are extremely slow, which makes it very slow to sort markers (for example,
 * in the problems view). This marker class stores the fields in the most efficient form
 * for sorting and display, but necessarily removes some generality from IMarker.
 */
public class ConcreteMarker {