Bug 131476 freeze due to IO in the UI thread
I was running i0309 and deleting some large number of resrouces from my workspace. There were likely other things going on (e.g., build, indexing, ...). After hitting the delete the UI went unresponsive for about a minute. During that time I hit ctrl-break and got the stack dump below that shows some sort of read-only checking going on in the UI thread. 3XMTHREADINFO "main" (TID:0x0012E800, sys_thread_t:0x000350DC, state:CW, native ID:0x00000DEC) prio=6 4XESTACKTRACE at org/eclipse/core/internal/filesystem/local/LocalFileNatives.internalGetFileInfoW(Native Method) 4XESTACKTRACE at org/eclipse/core/internal/filesystem/local/LocalFileNatives.fetchFileInfo(LocalFileNatives.java:60(Compiled Code)) 4XESTACKTRACE at org/eclipse/core/internal/filesystem/local/LocalFile.fetchInfo(LocalFile.java:121(Compiled Code)) 4XESTACKTRACE at org/eclipse/core/filesystem/provider/FileStore.fetchInfo(FileStore.java:255(Compiled Code)) 4XESTACKTRACE at org/eclipse/core/internal/localstore/FileSystemResourceManager.attributes(FileSystemResourceManager.java:122(Compiled Code)) 4XESTACKTRACE at org/eclipse/core/internal/resources/Resource.getResourceAttributes(Resource.java:1042(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:156(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79(Compiled Code)) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkAcceptedResource(ReadOnlyStateChecker.java:79) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:180) 4XESTACKTRACE at org/eclipse/ui/actions/ReadOnlyStateChecker.checkReadOnlyResources(ReadOnlyStateChecker.java:109) 4XESTACKTRACE at org/eclipse/ui/actions/DeleteResourceAction.getResourcesToDelete(DeleteResourceAction.java:583) 4XESTACKTRACE at org/eclipse/ui/actions/DeleteResourceAction.run(DeleteResourceAction.java:511) 4XESTACKTRACE at org/eclipse/jdt/internal/ui/refactoring/reorg/DeleteAction.run(DeleteAction.java:79) 4XESTACKTRACE at org/eclipse/jdt/ui/actions/SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:267) 4XESTACKTRACE at org/eclipse/jdt/ui/actions/SelectionDispatchAction.run(SelectionDispatchAction.java:243) 4XESTACKTRACE at org/eclipse/jface/action/Action.runWithEvent(Action.java:499) 4XESTACKTRACE at org/eclipse/jface/action/ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:539)
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java
public static String ProjectCapabilitySelectionGroup_disabledLabel;
	public static String ProjectCapabilitySelectionGroup_errorTitle;
	public static String ProjectCapabilitySelectionGroup_disabledCapability;
	public static String ProjectCapabilitySelectionGroup_invalidCapability;
	public static String ProjectCapabilitySelectionGroup_missingPrereqs;
	public static String ProjectCapabilitySelectionGroup_requiredPrereq;
	public static String ProjectCapabilitySelectionGroup_requiredPrereqs;
	public static String ProjectCapabilitySelectionGroup_membershipConflict;
	public static String ProjectCapabilitySelectionGroup_membershipPrereqConflict;
	public static String Capability_nameMissing;
	public static String ICategory_other;
	public static String WizardDataTransfer_existsQuestion;
	public static String WizardDataTransfer_overwriteNameAndPathQuestion;
	public static String WizardDataTransfer_exceptionMessage;
	public static String WizardTransferPage_selectTypes;
	public static String WizardTransferPage_selectAll;
	public static String WizardTransferPage_deselectAll;
	public static String NewProjectWizard_windowTitle;
	public static String NewProjectWizard_title;
	public static String NewProjectWizard_errorTitle;
	public static String NewProjectWizard_invalidCapabilities;
	public static String NewProjectWizard_noWizard;
	public static String CreateProjectWizard_errorTitle;
	public static String CreateProjectWizard_internalError;
	public static String CreateProjectWizard_caseVariantExistsError;
	public static String RemoveCapabilityWizard_errorMessage;
	public static String RemoveCapabilityWizard_internalError;
	public static String WizardNewProjectCapabilityPage_description;
	public static String WizardNewProjectCapabilityPage_noCapabilities;
	public static String WizardProjectReviewPage_description;