This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | Empty new files (New C++ Main File, New C Main File, New Class wizards in full remote mode) | ||
---|---|---|---|
Product: | cnd | Reporter: | soldatov <soldatov> |
Component: | Remote | Assignee: | issues@cnd <issues> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | P2 | ||
Version: | 8.0.1 | ||
Hardware: | PC | ||
OS: | Solaris | ||
Issue Type: | DEFECT | Exception Reporter: |
Description
soldatov
2014-11-06 09:23:25 UTC
I have seen such behavior on fast connection. I got randomly empty file newClass.cpp or newClass.h. Investigatiopn shows that when execution comes to this place (see the stack below), cache file is empty. "wizard-descriptor-asynchronous-jobs" at org.netbeans.modules.remote.impl.fs.RemotePlainFile$DelegateOutputStream.close(RemotePlainFile.java:567) at sun.nio.cs.StreamEncoder.implClose(StreamEncoder.java:320) at sun.nio.cs.StreamEncoder.close(StreamEncoder.java:149) at java.io.OutputStreamWriter.close(OutputStreamWriter.java:233) at org.netbeans.modules.templates.ScriptingCreateFromTemplateHandler.createFromTemplate(ScriptingCreateFromTemplateHandler.java:135) at org.netbeans.api.templates.CreateFromTemplateImpl.build(CreateFromTemplateImpl.java:121) at org.netbeans.api.templates.CreateFromTemplateImpl.build(CreateFromTemplateImpl.java:92) at org.netbeans.api.templates.FileBuilder.build(FileBuilder.java:250) at org.netbeans.api.templates.FileBuilder.createFromTemplate(FileBuilder.java:351) at org.openide.loaders.MultiDataObject.handleCreateFromTemplate(MultiDataObject.java:878) at org.netbeans.modules.cnd.source.SourceDataObject.handleCreateFromTemplate(SourceDataObject.java:135) at org.openide.loaders.DataObject$CreateAction.run(DataObject.java:1597) at org.openide.loaders.DataObjectPool$1WrapAtomicAction.run(DataObjectPool.java:261) at org.openide.filesystems.EventControl.runAtomicAction(EventControl.java:127) at org.openide.filesystems.FileSystem.runAtomicAction(FileSystem.java:499) at org.openide.loaders.DataObjectPool.runAtomicAction(DataObjectPool.java:286) at org.openide.loaders.DataObject.invokeAtomicAction(DataObject.java:1051) at org.openide.loaders.DataObject.createFromTemplate(DataObject.java:983) at org.netbeans.modules.cnd.editor.filecreation.CndClassWizardIterator.instantiate(CndClassWizardIterator.java:95) at org.netbeans.modules.cnd.editor.filecreation.CCFSrcFileIterator.instantiate(CCFSrcFileIterator.java:155) at org.openide.loaders.TemplateWizard$InstantiatingIteratorBridge.instantiate(TemplateWizard.java:1051) at org.openide.loaders.TemplateWizard.handleInstantiate(TemplateWizard.java:605) at org.openide.loaders.TemplateWizard.instantiateNewObjects(TemplateWizard.java:439) at org.openide.loaders.TemplateWizardIterImpl.instantiate(TemplateWizardIterImpl.java:253) Here is a race: (In reply to Vladimir Kvashin from comment #3) > Here is a race: "LocalHistoryStore" at org.netbeans.modules.remote.impl.fs.RemoteDirectory.ensureChildSync(RemoteDirectory.java:1573) at org.netbeans.modules.remote.impl.fs.RemotePlainFile.getInputStream(RemotePlainFile.java:333) at org.netbeans.modules.remote.impl.fileoperations.spi.FileOperationsProvider$FileOperations.getInputStream(FileOperationsProvider.java:362) at org.netbeans.modules.remotefs.versioning.spi.FileProxyProviderImpl$FileOperationsImpl.getInputStream(FileProxyProviderImpl.java:263) at org.netbeans.modules.versioning.core.api.VCSFileProxy.getInputStream(VCSFileProxy.java:361) at org.netbeans.modules.localhistory.utils.FileUtils.createInputStream(FileUtils.java:317) at org.netbeans.modules.localhistory.utils.FileUtils.copy(FileUtils.java:144) at org.netbeans.modules.localhistory.store.LocalHistoryStoreImpl.storeChangedSync(LocalHistoryStoreImpl.java:213) at org.netbeans.modules.localhistory.store.LocalHistoryStoreImpl.access$400(LocalHistoryStoreImpl.java:83) at org.netbeans.modules.localhistory.store.LocalHistoryStoreImpl$3.run(LocalHistoryStoreImpl.java:189) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1443) at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68) at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2058) and "wizard-descriptor-asynchronous-jobs" at org.netbeans.modules.remote.impl.fs.RemotePlainFile$DelegateOutputStream.close(RemotePlainFile.java:588) at sun.nio.cs.StreamEncoder.implClose(StreamEncoder.java:320) at sun.nio.cs.StreamEncoder.close(StreamEncoder.java:149) at java.io.OutputStreamWriter.close(OutputStreamWriter.java:233) at org.netbeans.modules.templates.ScriptingCreateFromTemplateHandler.createFromTemplate(ScriptingCreateFromTemplateHandler.java:135) at org.netbeans.api.templates.CreateFromTemplateImpl.build(CreateFromTemplateImpl.java:121) at org.netbeans.api.templates.CreateFromTemplateImpl.build(CreateFromTemplateImpl.java:92) at org.netbeans.api.templates.FileBuilder.build(FileBuilder.java:250) at org.netbeans.api.templates.FileBuilder.createFromTemplate(FileBuilder.java:351) at org.openide.loaders.MultiDataObject.handleCreateFromTemplate(MultiDataObject.java:878) at org.netbeans.modules.cnd.source.SourceDataObject.handleCreateFromTemplate(SourceDataObject.java:135) at org.openide.loaders.DataObject$CreateAction.run(DataObject.java:1597) at org.openide.loaders.DataObjectPool$1WrapAtomicAction.run(DataObjectPool.java:261) at org.openide.filesystems.EventControl.runAtomicAction(EventControl.java:127) at org.openide.filesystems.FileSystem.runAtomicAction(FileSystem.java:499) at org.openide.loaders.DataObjectPool.runAtomicAction(DataObjectPool.java:286) at org.openide.loaders.DataObject.invokeAtomicAction(DataObject.java:1051) at org.openide.loaders.DataObject.createFromTemplate(DataObject.java:983) at org.netbeans.modules.cnd.editor.filecreation.CndClassWizardIterator.instantiate(CndClassWizardIterator.java:102) at org.netbeans.modules.cnd.editor.filecreation.CCFSrcFileIterator.instantiate(CCFSrcFileIterator.java:155) at org.openide.loaders.TemplateWizard$InstantiatingIteratorBridge.instantiate(TemplateWizard.java:1051) at org.openide.loaders.TemplateWizard.handleInstantiate(TemplateWizard.java:605) at org.openide.loaders.TemplateWizard.instantiateNewObjects(TemplateWizard.java:439) at org.openide.loaders.TemplateWizardIterImpl.instantiate(TemplateWizardIterImpl.java:253) at org.openide.loaders.TemplateWizardIteratorWrapper$ProgressInstantiatingIterator.instantiate(TemplateWizardIteratorWrapper.java:180) at org.openide.WizardDescriptor.callInstantiateOpen(WizardDescriptor.java:1626) at org.openide.WizardDescriptor.callInstantiate(WizardDescriptor.java:1570) at org.openide.WizardDescriptor.access$2300(WizardDescriptor.java:92) at org.openide.WizardDescriptor$Listener$2$1.run(WizardDescriptor.java:2257) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1443) at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68) at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2058) The 1-st thread downloads file from remote (where it is still empty), the 2-nd one uploads the file to remote. Integrated into 'main-silver', will be available in build *201506180001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-silver/rev/11860d724510 User: Vladimir Kvashin <vkvashin@netbeans.org> Log: fixed #248449 - Empty new files (New C++ Main File, New C Main File, New Class wizards in full remote mode) |