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.
java.lang.AssertionError: [(1: /export/home/as204739/Projects/sfbay/clucene-0.9.10/test/test.h), (3: /export/home/as204739/Projects/sfbay/clucene-0.9.10/src/CLucene.h), (9: /export/home/as204739/Projects/sfbay/clucene-0.9.10/src/CLucene/index/IndexWriter.h), (11: /export/home/as204739/Projects/sfbay/clucene-0.9.10/src/CLucene/search/Similarity.h)] started on /export/home/as204739/Projects/sfbay/clucene-0.9.10/test/queryParser/TestQueryParser.cpp at org.netbeans.modules.cnd.apt.impl.support.APTIncludeHandlerImpl.pushIncludeImpl(APTIncludeHandlerImpl.java:209) at org.netbeans.modules.cnd.apt.impl.support.APTIncludeHandlerImpl.pushInclude(APTIncludeHandlerImpl.java:64) at org.netbeans.modules.cnd.modelimpl.parser.apt.APTParseFileWalker.include(APTParseFileWalker.java:252) at org.netbeans.modules.cnd.modelimpl.parser.apt.APTParseFileWalker.onInclude(APTParseFileWalker.java:121) at org.netbeans.modules.cnd.apt.support.APTWalker.onAPT(APTWalker.java:225) at org.netbeans.modules.cnd.apt.support.APTWalker.toNextNode(APTWalker.java:329) at org.netbeans.modules.cnd.apt.support.APTWalker.nextTokenImpl(APTWalker.java:293) at org.netbeans.modules.cnd.apt.support.APTWalker.access$100(APTWalker.java:38) at org.netbeans.modules.cnd.apt.support.APTWalker$WalkerTokenStream.nextToken(APTWalker.java:91) at org.netbeans.modules.cnd.apt.utils.APTCommentsFilter.nextToken(APTCommentsFilter.java:39) at antlr.TokenStreamSelector.nextToken(TokenStreamSelector.java:41) at org.netbeans.modules.cnd.apt.impl.support.APTExpandedStream.nextToken(APTExpandedStream.java:77) at org.netbeans.modules.cnd.apt.impl.support.lang.APTBaseLanguageFilter$FilterStream.nextToken(APTBaseLanguageFilter.java:104) at antlr.TokenBuffer.<init>(TokenBuffer.java:51) at antlr.LLkParser.<init>(LLkParser.java:32) at antlr.LLkParserNoEx.<init>(LLkParserNoEx.java:42) at org.netbeans.modules.cnd.modelimpl.parser.generated.CPPParser.<init>(CPPParser.java:406) at org.netbeans.modules.cnd.modelimpl.parser.generated.CPPParser.<init>(CPPParser.java:413) at org.netbeans.modules.cnd.modelimpl.parser.CPPParserEx.<init>(CPPParserEx.java:121) at org.netbeans.modules.cnd.modelimpl.parser.CPPParserEx.getInstance(CPPParserEx.java:135) at org.netbeans.modules.cnd.modelimpl.csm.core.FileImpl.doParse(FileImpl.java:507) at org.netbeans.modules.cnd.modelimpl.csm.core.FileImpl._reparse(FileImpl.java:280) at org.netbeans.modules.cnd.modelimpl.csm.core.FileImpl.reparse(FileImpl.java:256) at org.netbeans.modules.cnd.modelimpl.csm.core.FileImpl.ensureParsed(FileImpl.java:208) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread.run(ParserThread.java:66) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThreadManager$Wrapper.run(ParserThreadManager.java:60) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:499) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:932)
fixed: - support for copying states - use copy of state to prevent modification of non-sharable include info data cvs log: Checking in apt/src/org/netbeans/modules/cnd/apt/support/APTIncludeHandler.java; /shared/data/ccvs/repository/cnd/apt/src/org/netbeans/modules/cnd/apt/support/APTIncludeHandler.java,v <-- APTIncludeHandler.java new revision: 1.1.2.4; previous revision: 1.1.2.3 done Checking in apt/src/org/netbeans/modules/cnd/apt/support/APTPreprocState.java; /shared/data/ccvs/repository/cnd/apt/src/org/netbeans/modules/cnd/apt/support/APTPreprocState.java,v <-- APTPreprocState.java new revision: 1.1.2.4; previous revision: 1.1.2.3 done Checking in modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/ProjectBase.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/ProjectBase.java,v <-- ProjectBase.java new revision: 1.2.2.27.2.89; previous revision: 1.2.2.27.2.88 done Checking in apt/src/org/netbeans/modules/cnd/apt/impl/support/APTIncludeHandlerImpl.java; /shared/data/ccvs/repository/cnd/apt/src/org/netbeans/modules/cnd/apt/impl/support/APTIncludeHandlerImpl.java,v <-- APTIncludeHandlerImpl.java new revision: 1.1.2.15; previous revision: 1.1.2.14 done Checking in modelimpl/src/org/netbeans/modules/cnd/modelimpl/parser/apt/APTPreprocStateImpl.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/parser/apt/APTPreprocStateImpl.java,v <-- APTPreprocStateImpl.java new revision: 1.1.2.11; previous revision: 1.1.2.10 done
The bug is reproducible on the many CPUs machine during reparse phase.
This problem affects the correctness of reparsing and the result of filling model by new values. The problem is that there should not be "clean" operations on shared states, the clean should be done on exclusive object and then it need to be put into storage of states
Created attachment 41644 [details] proposed patch: copy shared objects to prevent corrupting
Created attachment 41716 [details] updated patch after review needed changes
patch reviewed and integrated - put copy of shared object in storage - use lock when put objects in storage cvs log: Checking in modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/ProjectBase.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/ProjectBase.java,v <-- ProjectBase.java new revision: 1.2.2.27.2.94; previous revision: 1.2.2.27.2.93 done Checking in modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/FileContainer.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/FileContainer.java,v <-- FileContainer.java new revision: 1.1.2.7; previous revision: 1.1.2.6 done Checking in apt/src/org/netbeans/modules/cnd/apt/impl/support/APTIncludeHandlerImpl.java; /shared/data/ccvs/repository/cnd/apt/src/org/netbeans/modules/cnd/apt/impl/support/APTIncludeHandlerImpl.java,v <-- APTIncludeHandlerImpl.java new revision: 1.1.2.17; previous revision: 1.1.2.16 done